1=1 代表true, 如果单独是这个sql语句,可以不写where 1=1。
但如果在程序中需要拼装sql语句。比如后面要加条件,就要写上这个。
<wbr><span style="font-family:Helvetica,Tahoma,Arial,sans-serif; font-size:14px; line-height:25.1875px">select * from table where 1=1因为table中根本就没有名称为1的字段,所以该SQL等效于select * from table,<span style="color:red">这个SQL语句很明显是全表扫描,需要大量的IO操作,数据量越大越慢,建议查询时增加必输项,即where
1=1后面追加一些常用的必选条件,并且将这些必选条件建立适当的索引,效率会大大提高<br>
PS:这不是SQL写法的问题,也不是数据库的问题,是自己程序逻辑的问题</span></span><span style="font-family:Helvetica,Tahoma,Arial,sans-serif; font-size:14px; line-height:25.1875px"></span></wbr>