mysql 中 where 1=1真的影响效率吗
展开全部
这要看你如何用它,毕仅where 1=1这种表达式真假判断是要产生系统开销的。用得其所可提高效率减小开销,反之亦然。例如:
select * from t1 where 1=1;
等效于
select * from t1;
前者where 1=1必然为真,此判断为画蛇添足,属于无用功、徒增系统开销。
如果只需要查看数据表字段信息无需查看具体记录,那么下列写法将非常可取
select * from t1 where 1<>1;
这样系统将直接输出空记录集,而不会花费资源检索具体的记录数据到内存中,这无疑会提高了效率。
select * from t1 where 1=1;
等效于
select * from t1;
前者where 1=1必然为真,此判断为画蛇添足,属于无用功、徒增系统开销。
如果只需要查看数据表字段信息无需查看具体记录,那么下列写法将非常可取
select * from t1 where 1<>1;
这样系统将直接输出空记录集,而不会花费资源检索具体的记录数据到内存中,这无疑会提高了效率。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
并不会影响查询性能. 因为SQL语句在执行前会被优化, 会过滤掉像 1=1 这样的条件.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |