首页 > 数据库 >[Mysql]IN and OR

[Mysql]IN and OR

时间:2024-07-12 19:56:19浏览次数:8  
标签:conversion expr list Type values Mysql type

这个问题我看网上有人做了实验,是in的效率会比or高

去查了官方文档

expr IN (value,...)
Returns 1 (true) if expr is equal to any of the values in the IN() list, else returns 0 (false).
Type conversion takes place according to the rules described in Section 14.3, “Type Conversion in Expression Evaluation”, applied to all the arguments.
If no type conversion is needed for the values in the IN() list, they are all non-JSON constants of the same type, and expr can be compared to each of them as a value of the same type (possibly after type conversion), an optimization takes place. The values the list are sorted and the search for expr is done using a binary search, which makes the IN() operation very quick.

可以看到,in会排序列表中的元素,进行二分查找,所以效率更高一点。

标签:conversion,expr,list,Type,values,Mysql,type
From: https://www.cnblogs.com/DCFV/p/18299266

相关文章

  • 适合小白学校的springboot2 vue3 图书管理系统idea开发mysql数据库
    博主介绍:专注于Java.net phpphython 小程序等诸多技术领域和毕业项目实战、企业信息化系统建设,从业十五余年开发设计教学工作☆☆☆精彩专栏推荐订阅☆☆☆☆☆不然下次找不到哟我的博客空间发布了1000+毕设题目方便大家学习使用感兴趣的可以先收藏起来,还有大家在......
  • 我的MYSQL学习心得, 自定义存储过程和函数
    转载:https://www.cnblogs.com/lyhabc/p/3793524.html我的MYSQL学习心得(一)简单语法我的MYSQL学习心得(二)数据类型宽度我的MYSQL学习心得(三)查看字段长度我的MYSQL学习心得(四)数据类型我的MYSQL学习心得(五)运算符我的MYSQL学习心得(六)函数我的MYSQL学习心得(七)查询我的MYSQ......
  • MYSQL中replace into的用法
    今天在编程的时候,学习了replaceinto的用法,真的很好用,是insertinto的增强版。在向表中插入数据时,我们经常会遇到这样的情况:1、首先判断数据是否存在;2、如果不存在,则插入;3、如果存在,则更新。###项目成本案例:::::  1IntegerupdateTransport(Reimbursementreimbursement);......
  • mysql获取按日期排序获取最新的记录
    今天让一个数据查询难了。主要是对groupby理解的不够深入。才出现这样的情况这种需求,我想很多人都遇到过。下面是我模拟我的内容表我现在需要取出每个分类中最新的内容select*fromtestgroupbycategory_idorderby`date`结果如下:明显。这不是我想要的数据,原因是msyql......
  • Mybatis模糊查询MySQL中记录的的常用三种方法
    mybatis的模糊查询功能使用的很广泛,以MySQL数据库为例(不同的数据库,有些可能不支持) 常用的模糊查询有三种方法:直接使用%拼接字符串,如 '%'#{name}'%' 或 "%"#{name}"%",单引号或双引号都可以。(或者  '%${vendorId}%' )<iftest="vendorId!=nullandvendorId!=......
  • 运维系列:数据库服务器 重启mysql服务出现 ERROR 1045: Access denied for user: ‘roo
    @[TOC](数据库服务器重启mysql服务出现ERROR1045:Accessdeniedforuser:‘root@localhost’(Usingpassword:NO)怎么)数据库服务器重启mysql服务出现ERROR1045:Accessdeniedforuser:‘root@localhost’(Usingpassword:NO)怎么解决?系统是ubuntuse......
  • 重装系统后MySQL变回原来模样
    系统重装后保留mysql重装(保留原来数据)顺便换了一下安装位置此次安装采用的是压缩包安装版本:8.0.34注意:下面所有命令行均是在管理员身份下执行的!!!所遇问题环境问题,文件权限问题,服务没有相应控制功能问题解决方案环境问题问题描述:空有文件夹和曾经的数据,打开命令行却无法找......
  • KU注册链接:如何手动编译Percona Server for MySQL 5.5
    此文由KU注册链接вт989点сс编译原创,随着MySQL8.x版本的陆续更新,Percona的PerconaServerforMySQL也同样支援,不过想要在新的OS(例如DebianLinux12Bookworm)上使用旧版MySQL,Percona已经不提供5.5版DEB安装档,所以藉由此实验在DebianLinux12Bookwor......
  • 【MySQL】8.复合查询
    复合查询一.基本查询回顾(新增子查询)二.多表查询三.自连接四.子查询1.单列单行子查询2.单列多行子查询——三个关键字3.多列子查询4.在from子句中使用子查询五.合并查询六.总结一.基本查询回顾(新增子查询)//1.查询工资高于500或岗位为MANAGER的雇员,同时还要满足......
  • 【实操记录】MySQL主从配置
    本文使用MySQL原生支持的主从同步机制,详细记录了配置步骤及运维操作方法,可供大家直接参考、使用。本文假设已经部署了两台主机的MySQL软件,且数据库服务正常,详细部署步骤可本站搜索:"mysql二进制安装包部署"■■主从配置■master授权同步账户CREATEUSER'repl'@'10.19.238.2......