mysql中where1=1是什么意思

技术mysql中where1=1是什么意思这篇文章主要介绍“mysql中where1=1是什么意思”,在日常操作中,相信很多人在mysql中where1=1是什么意思问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操

本文主要介绍“mysql中where1=1是什么意思”。在日常操作中,相信很多人对mysql中的why 1=1是什么意思有疑问。边肖查阅了各种资料,整理出简单易用的操作方法,希望能帮助大家解答“mysql中的why 1=1是什么意思”的疑惑!接下来,请和边肖一起学习!

00-1010我们先来看一段代码。

selectid=' queryBookInfo ' parameter type=' com . ths . platform . entity . bookinfo ' result type=' Java . lang . integer '

从_booktwhere1=1中选择count(id)

iftest='title!=nullandtitle!='''

ANDtitle=#{title}

/if

iftest='作者!=nullandauthor!='''

ANDauthor=#{author}

/if

上面的代码/select很熟悉,就是查询符合条件的项目总数。在mybatis中,if标记判断where子句后的条件通常用于防止sql在第一个字段为空时报告错误。没错。当您遇到多个查询条件时,使用where 1=1可以轻松解决我们的条件为空的问题。那么这种写法有什么问题呢?

网上有很多人说这样会造成性能问题,可能会使索引无效。那么,让我们今天实际测量它,我们不取指数吗?

where 1=1

标题字段已经被索引,让我们通过EXPLAIN来看一下。

解释从t _ book中选择*其中title=' and in the world

mysql中where1=1是什么意思

解释从t _ book中选择*其中1=1,title=' and in the world

mysql中where1=1是什么意思

对比上面两种我们会发现 可以看到possible_keys(可能使用的索引) 和 key(实际使用的索引)都使用到了索引进行检索。

实测

where 1=1 也会走索引,不影响查询效率,我们写的sql指令会被mysql 进行解析优化成自己的处理指令,在这个过程中1 = 1这类无意义的条件将会被优化。使用explain EXTENDED sql 进行校对,发现确实where1=1这类条件会被mysql的优化器所优化掉。

然后我们可以改变mybatis中的编写方法,因为毕竟mysql优化器也需要时间。虽然是索引的,但是在有大量数据的时候还是会有影响,所以我们建议代码这样写:

selectid=' queryBookInfo ' parameter type=' com . ths . platform . entity . bookinfo ' result type=' Java . lang . integer '

从_bookt中选择count(*)项

在哪里

iftest='title!=nullandtitle!='''

title=#{title}

/if

iftest='作者!=nullandauthor!='''

ANDauthor=#{author}

/if

/在哪里

/select我们改用where标记。

结论

MyBatis有一个简单且适合大多数场景的解决方案。在其他场景下,可以根据需要进行定制。这只需要一个简单的改变:

selectid=' findActiveBlogLike '

结果类型=“博客”

从博客中选择*

在哪里

iftest='state!=null

状态=#{state}

/if

iftest='title!=null

和类似#{title}

/if

iftest='作者!=nullandauthor.name!=null

ANDauthor _ name like # { author . name }

/if

/在哪里

/selectWHERE元素仅在子元素返回任何内容时插入“WHERE”子句。此外,如果子句以“AND”或“or”开头,where元素也将删除它们。

或者使用其中1=1。

至此,“mysql中的where1=1是什么意思”的研究结束,希望能解决大家的疑惑。理论和实践的结合可以帮助你学得更好。去试试吧!如果你想继续学习更多的相关知识,请继续关注网站,边肖会继续努力,给大家带来更多实用的文章!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/142168.html

(0)

相关推荐

  • Shuffle原理及对应的Consolidation优化机制是怎样的

    技术Shuffle原理及对应的Consolidation优化机制是怎样的这篇文章给大家介绍Shuffle原理及对应的Consolidation优化机制是怎样的,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所

    攻略 2021年12月3日
  • CF1506C Double-ended Strings 题解

    技术CF1506C Double-ended Strings 题解 CF1506C Double-ended Strings 题解CF1506C Double-ended Strings 题解Conte

    礼包 2021年12月16日
  • python安装cxOracle需要注意什么

    技术python安装cxOracle需要注意什么这篇文章主要介绍了python安装cxOracle需要注意什么,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下

    攻略 2021年10月31日
  • 香辣鱼片的家常做法,香辣鱼条的简单做法是什么

    技术香辣鱼片的家常做法,香辣鱼条的简单做法是什么我是刘涛美食,感谢邀请香辣鱼片的家常做法。到超市去买那种袋装的龙利鱼,又没有刺,容易新手操作,而且那种鱼的口感特别嫩,又没有什么腥味。我来说下最简单又实用的操作方法:
    1:

    生活 2021年10月26日
  • 香港服务器迁移网站要注意什么香港服务器租用

    技术香港服务器迁移网站要注意什么香港服务器租用将网站迁移到新的香港服务器需要大量规划。一些主要原因是磁盘空间不足、客户服务差以及服务器经常出现故障。起初,转向新的网络香港机房服务商可能看起来很棒,但实际上,不同的原因所需

    礼包 2021年11月3日
  • 基于AWS学习的10个Linux命令分别是什么

    技术基于AWS学习的10个Linux命令分别是什么基于AWS学习的10个Linux命令分别是什么,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。在AWS上执行

    攻略 2021年10月21日