sql为什么要写where 1=1

这段代码应该是由程序(例如Java)中生成的,where条件中 1=1 之后的条件是通过 if 块动态变化的。例如:

String sql=”select * from table_name where 1=1”;

if( conditon 1) {

      sql=sql+"  and  var2=value2";

    }

if(conditon 2) {

      sql=sql+"  and var3=value3";

   }

where 1=1 是为了避免where 关键字后面的第一个词直接就是 “and”而导致语法错误。