1=1结果为true,使用where true后测试
- 所有条件为null
- 第一个条件为null
- 全部不为null
都能得出正确结果,where 1也能得到正确结果,google后发现没有人这么做,这是为什么呢
SELECT * FROM `table` WHERE 1=1
SELECT * FROM `table` WHERE TRUE
SELECT * FROM `table` WHERE 1
1=1结果为true,使用where true后测试
都能得出正确结果,where 1也能得到正确结果,google后发现没有人这么做,这是为什么呢
SELECT * FROM `table` WHERE 1=1
SELECT * FROM `table` WHERE TRUE
SELECT * FROM `table` WHERE 1
一般认为where 1=1的兼容性比 where true的兼容性更好,因为不同的数据库对boolean的处理有差异,容易导致一些问题。