【不懂就问】where 1=1 怎么样?
愿天堂没有BUG
共 618字,需浏览 2分钟
·
2021-12-23 14:08
缘由
新进公司,看到项目中基本每个sql都有写where 1 = 1
这个sql拼接,仔细想想这样好不好?然后找谷歌问了问,有些人说没啥不好,有些人说有缺点,那就自己试一试。
实践是检验真理的唯一标准
优点
sql拼接的时候不用管后面跟了
and xxx
的时候,就不用处理这个and
了,方便!缺点
真的有缺点吗?网上有些人说加了
1=1
就不会索引了,那就explain
一下LOGINID唯一索引,执行sql
explain select * from frame_user where LOGINID = 'admin';
结果出发了索引,这个很正常;然后加上
1=1
试试,执行sqlexplain select * from frame_user where 1=1 and LOGINID = 'admin';
,结果一毛一样,同样走了索引
结果
where 1=1
没啥坏处,随便用吧
如果以上有哪里说的不对,欢迎指出,反正不懂就问!
作者:唔贝
链接:https://juejin.cn/post/6992475121608818702
来源:稀土掘金
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
评论