iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >怎样提高mysql中or和in的效率
  • 145
分享到

怎样提高mysql中or和in的效率

2024-04-02 19:04:59 145人浏览 八月长安
摘要

怎样提高Mysql中or和in的效率,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。前言今天遇到了一个网站卡死的问题,过了几分钟

怎样提高Mysql中or和in的效率,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

前言

今天遇到了一个网站卡死的问题,过了几分钟就好了,找到了一个定时脚本中有个sql,执行效率很慢,DBA建议将or改为in,效率提升了几百倍

场景描述

1.两个表关联查询
2.table1 的数据量接近100万
3.table2 的数据量接近900万
4.查询条件中的title字段没有加索引
5.原始查询语句

SELECT a.id as id FROM `table1`as a left join table2 as b on a.id=b.id WHERE b.title="衣服" or b.title="裤子" or b.title="帽子" limit 0,100

6.改造后的查询语句

SELECT a.id as id FROM `table1`as a left join table2 as b on a.id=b.id WHERE b.title IN ("衣服","裤子","帽子") limit 0,100

改造后的效率

原sql的执行时间为5s,更改之后只需要0.01s

原因

查了一下资料,在数据量过百万,并且条件没有加索引,or的查询效率远远低于in,or的效率为O(n),而in的效率为O(logn), 当n越大的时候效率相差越明显。

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注编程网数据库频道,感谢您对编程网的支持。

您可能感兴趣的文档:

--结束END--

本文标题: 怎样提高mysql中or和in的效率

本文链接: https://www.lsjlt.com/news/61225.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 怎样提高mysql中or和in的效率
    怎样提高mysql中or和in的效率,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。前言今天遇到了一个网站卡死的问题,过了几分钟...
    99+
    2022-10-18
  • sql中in与exist效率是怎么样的
    这篇文章将为大家详细讲解有关sql中in与exist效率是怎么样的,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一、IN 与EXISTS1、理解IN的执行流程SELEC&...
    99+
    2022-10-19
  • 怎样提高bitblt函数的执行效率
    要提高BitBlt函数的执行效率,可以考虑以下几个方面的优化:1. 减少函数调用次数:每次函数调用都会有一定的开销,可以将多个相邻的...
    99+
    2023-08-18
    bitblt
  • 怎样提高美国服务器的效率
    提高美国服务器效率的方法有:1、将美国服务器进行虚拟化操作;2、灵活运用管理工具来提升美国服务器管理效率;3、升级美国服务器的配置,提高服务器性能效率。具体内容如下:虚拟化美国服务器假如您不愿项目投资附加的服务器,只是期望灵活运用目前的美国...
    99+
    2022-10-24
  • Python中提高代码效率技巧是怎么样的
    这篇文章将为大家详细讲解有关Python中提高代码效率技巧是怎么样的,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。对象相等。您认为type(a) == type(b)和type(a) is ...
    99+
    2023-06-17
  • 有效提高Vista搜索效率的技巧是怎样的
    本篇文章为大家展示了有效提高Vista搜索效率的技巧是怎样的,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。  技巧一:快速更新搜索结果  实际工作中,我们可能经常需要在某个固定路径下搜索不同格式的文...
    99+
    2023-06-14
  • 怎么提高MySQL的Order by语句查询效率
    这篇文章主要讲解了“怎么提高MySQL的Order by语句查询效率”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么提高MySQL的Order by语句查...
    99+
    2022-10-18
  • MySQL中索引提高查询效率的原因是什么
    MySQL中索引提高查询效率的原因是什么,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。磁盘IO和预读:先说一下磁盘IO,磁盘读...
    99+
    2022-10-18
  • Python IDE 中的 LeetCode 和 API 开发:如何提高效率?
    Python 已经成为了现代软件开发中不可或缺的一部分,而 Python IDE 则是 Python 开发的必备工具之一。在 Python IDE 中,LeetCode 和 API 开发是两个重要的方面,可以帮助开发人员提高效率。在本文中...
    99+
    2023-07-19
    ide leetcode api
  • Go语言中除法运算的效率怎么提高
    本文小编为大家详细介绍“Go语言中除法运算的效率怎么提高”,内容详细,步骤清晰,细节处理妥当,希望这篇“Go语言中除法运算的效率怎么提高”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。近年来,Go语言在程序员中的人...
    99+
    2023-07-06
  • Mysql中怎么提升大数据表的拷贝效率
    这篇文章将为大家详细讲解有关Mysql中怎么提升大数据表的拷贝效率,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。可能情况:1.导致数据库崩溃或者卡死&nbs...
    99+
    2022-10-18
  • 容器中的PHP IDE和JavaScript:如何提高开发效率?
    随着云计算和容器技术的不断发展,越来越多的开发人员开始将开发环境部署在容器中。容器化开发环境可以提高开发效率和开发周期,同时也使得开发人员能够更加灵活地管理自己的开发环境。在本文中,我们将探讨如何使用容器中的PHP IDE和JavaScri...
    99+
    2023-07-20
    ide 容器 javascript
  • 怎么通过格式良好的SQL提高效率和准确性
    这篇文章主要为大家展示了“怎么通过格式良好的SQL提高效率和准确性”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“怎么通过格式良好的SQL提高效率和准确性”这篇文...
    99+
    2022-10-18
  • Windows 系统中的 Apache 和 Git:如何优化性能和提高效率?
    Apache 和 Git 是现代 Web 开发中必不可少的工具。Apache 是一个流行的 Web 服务器,而 Git 是一种分布式版本控制系统。在 Windows 系统中,使用 Apache 和 Git 可以帮助我们快速构建 Web 应...
    99+
    2023-09-03
    git apache windows
  • Java 容器中的 Git 和 JavaScript:如何提高项目管理效率?
    在软件开发中,项目管理是至关重要的一环。在项目管理中,代码版本控制和任务跟踪是必不可少的步骤。这两个步骤都需要使用到一些工具来帮助我们提高效率。在本文中,我们将介绍如何使用 Java 容器中的 Git 和 JavaScript 来提高项目...
    99+
    2023-09-12
    容器 git javascript
  • MySQL查询语句中的IN和Exists怎样进行对比分析
    这篇文章给大家介绍MySQL查询语句中的IN和Exists怎样进行对比分析,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。背景介绍最近在写SQL语句时,对选择IN 还是Exists 犹豫...
    99+
    2022-10-18
  • 如何使用MySQL的视图和存储过程提高数据处理和操作效率?
    如何使用MySQL的视图和存储过程提高数据处理和操作效率?视图和存储过程是MySQL中非常有用的功能,它们可以有效提高数据的处理和操作效率,尤其在复杂的数据处理场景中。本文将介绍如何使用MySQL的视图和存储过程,并通过代码示例来说明其使用...
    99+
    2023-10-22
    MySQL视图 (个字关键词:视图 效率)
  • 了解Java编程中的对象和API,从而提高算法效率!
    Java是一种面向对象的编程语言,它允许程序员创建对象来表示现实世界中的事物,并使用这些对象来编写程序。Java的API(Application Programming Interface)是一个强大的工具,可以帮助程序员编写高效的代码,提...
    99+
    2023-10-24
    对象 编程算法 api
  • 为什么使用Python中的numpy和django可以提高开发效率?
    Python是一种广泛应用的编程语言,尤其在数据分析和Web开发领域中非常受欢迎。Python中有许多优秀的库和框架,其中numpy和django被广泛应用于数据分析和Web开发中。本文将探讨使用numpy和django可以提高开发效率的原...
    99+
    2023-11-01
    numpy django numy
  • 编程算法中的 Java 和 Git 同步操作:如何提高效率?
    对于许多编程开发人员来说,Java 和 Git 是必不可少的工具。Java 是一种流行的编程语言,而 Git 是一种流行的版本控制工具。当这两个工具结合在一起时,可以提高编程效率并减少错误。在本文中,我们将介绍如何在编程算法中使用 Jav...
    99+
    2023-09-25
    git 同步 编程算法
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作