mysql 查询 where 和 order by 需要很长时间

2024-01-03

我有 700 万条记录的 mysql 数据库

当我运行查询时

select  * from  data where cat_id=12 order by id desc limit 0,30

查询需要很长时间,例如 0.4603 秒

但同样的查询没有 out (where cat_id=12) 或没有 (order by id desc) 非常快 查询需要很长时间,如 0.0002 秒

我有 cat_id 和 id 的索引

有什么方法可以快速查询(where 和 order by)

thanks


创建一个结合了cat_id和id的复合索引。看http://dev.mysql.com/doc/refman/5.0/en/multiple-column-indexes.html http://dev.mysql.com/doc/refman/5.0/en/multiple-column-indexes.html有关语法和示例。

如果您仅指定“cat_id=12”,您将获得所有匹配的行,由于有索引,速度很快。但是这些行不会被排序,因此mysql必须将它们全部读入临时表并对该表进行排序,这很慢。

类似地,“order by id desc”将快速对行进行排序,但 mysql 必须读取所有行以找出哪些行具有“cat_id=12”,这很慢。

综合指数应该可以解决这些问题。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

mysql 查询 where 和 order by 需要很长时间 的相关文章

  • 如何按关系的数量或成员对 Doctrine DQL 查询进行排序?

    我正在尝试创建一个查询 用于从 Doctrine 数据库中检索对象 并按特定一对多关系的成员数量排序 更具体地说 我有两个实体 Person 和 Federation 一个人可以是一个联盟的成员 人具有 联盟 关系 并且一个联盟可以有n人
  • MySQL通过UPDATE/DELETE合并重复数据记录

    我有一个看起来像这样的表 mysql gt SELECT FROM Colors ID USERNAME RED GREEN YELLOW BLUE ORANGE PURPLE 1 joe 1 null 1 null null null 2
  • PDO获取最后插入的ID

    我有一个查询 我想获取插入的最后一个 ID 字段ID是主键并且自动递增 我知道我必须使用这个声明 LAST INSERT ID 该语句适用于如下查询 query INSERT INTO cell place ID VALUES LAST I
  • Magento - 无法重新索引产品价格 - 外键约束失败

    我最近刚刚将我的 magento 商店从 1 4 2 升级到 1 7 0 2 升级进行得很顺利 但是当我尝试在升级后重新索引数据时 产品价格失败了 我尝试过使用php shell indexer php reindexall来自 SSH 它
  • 使用 Laravel 和 Eloquent 从表中选择全部

    我正在使用 Laravel 4 设置我的第一个模型 以从名为的表中提取所有行posts 在标准 MySQL 中我会使用 SELECT FROM posts 如何在 Laravel 4 模型中实现这一目标 我的完整模型源代码如下
  • 当我尝试计算 mysqli 结果时,为什么会收到警告?

    下面的代码会导致此警告 警告 count 参数必须是数组或实现 Countable 的对象 为什么要这样做 如何防止出现警告 if isset GET edit sonum GET edit update true result mysql
  • 如何在没有 DROP 数据库权限的情况下从命令行删除所有 MySQL 表? [复制]

    这个问题在这里已经有答案了 如何使用命令提示符删除 Windows MySQL 中的所有表 我想这样做的原因是我们的用户有权访问数据库删除 但无权重新创建数据库本身 因此我们必须手动删除表 有没有办法一次删除所有表 请记住 大多数表都与外键
  • 内连接 3 个表

    我正在使用 PHP 和 PDO 我需要重新收集连接 3 个表的信息 photos albums 相册照片 该表具有以下结构 photos photo id int path varchar nick varchar date timesta
  • 具有单个成员的结构是否具有与成员类型相同的性能?

    Does struct单个成员是否具有与成员类型相同的性能 内存使用和速度 Example 这段代码是一个struct与单个成员 struct my int int value 是的表现my int与 一样int 同意 harper htt
  • java.lang.NoSuchMethodError:没有虚拟方法 setTag(Ljava/lang/Object;)

    我刚刚完成使用登录和注册屏幕与齐射的代码 但在模拟器中运行时我收到此错误 java lang NoSuchMethodError No virtual method setTag Ljava lang Object Lcom android
  • mysql时间比较

    我有 job start 和 job end 时间 timediff 会给我时间差 现在我想看看这项工作是否花费了超过 2 小时 30 分钟 我如何比较它 如果我这样做 我会收到错误 timediff job start job end g
  • 迁移问题:MS SQL > MySQL:插入缓冲区内存

    我在使用 MySQL Workbench 上的内置迁移工具时遇到问题 我正在将一个非常大的数据库从 MS SQL 2014 迁移到 MySQL MS SQL 服务器本地部署在我的 Windows 8 1 桌面上 MySQL 服务器在我的网络
  • where 子句中的双 %% ?

    我有一个 where 子句 如下例所示 WHERE subject LIKE chef AND dep LIKE psy 使用 1 或 2 符号有什么区别 我知道其中一个的含义 通配符 但不知道第二个添加的功能是什么 该查询可能是一个拼写错
  • DataTables 第 2 页的分页未调用放大弹出窗口

    所以我有这个启用分页的数据表 我编码了一种方式 以便用户可以编辑表的行 当用户调用它在放大弹出窗口中打开的编辑页面时 它在第 1 页 从第 2 页起都运行良好 DataTable 及其前面停止调用 Magnific Popup 我只是不明白
  • 如何删除MySQL中的所有事件

    如果我想删除某个事件 我需要查询类似的内容 DROP EVENT IF EXISTS eventname 但我找不到一次性删除所有事件的命令 必须一项一项地删除 有没有一次性删除所有事件的SQL DROP EVENT IF EXISTS S
  • Monkeyrunner/jython 中未找到 JDBC 驱动程序错误

    我需要在中插入一些东西DB 我在用着JDBC as a connector jython the script mysql数据库和脚本正在运行CentOS 我的代码看起来像这样 from com android monkeyrunner i
  • 数据库分区 - 水平与垂直 - 规范化和行拆分之间的区别?

    我试图理解不同的概念数据库分区这就是我的理解 水平分区 分片 将表拆分为不同的表 其中将包含初始表中的行的子集 如果按大陆拆分用户表 我见过很多这样的示例 例如北美的子表 欧洲的另一个子表 ETC 每个分区位于不同的物理位置 理解 机器 据
  • 索引在 NOT IN 或 <> 子句中起作用吗?

    我读过 至少 Oracle 数据库中的普通索引基本上是 B 树结构 因此存储处理适当根节点的记录 小于 根的记录被迭代地存储在树的左侧部分 而 大于 根的记录被存储在右侧部分 正是这种存储方法有助于通过树遍历实现更快的扫描 因为深度和广度都
  • 控制数据是否存在于数组中

    我在mysql中有两个不同的表 我正在使用curl从json文件中获取数据 我的第一个表名称是 tblclients 该表存储客户端数据 我的第二个表名称是 tblcustomfieldsvalues 该表使用 tblclients 表的
  • Mysql加密/存储敏感数据,

    我的 PHP 网站有以下内容 启用 SSL 饼干 session set cookie params cookieParams lifetime cookieParams path cookieParams domain secure ht

随机推荐

  • 如何在keras中实现自定义指标?

    我收到此错误 sum 得到了意外的关键字参数 out 当我运行这段代码时 import pandas as pd numpy as np import keras from keras layers core import Dense Ac
  • 如何制作自定义键盘布局?

    为 Windows 制作键盘布局的最佳方法是什么 具体来说 这种布局将出现在 文本服务和输入语言 列表中 而无需购买昂贵的软件 我了解 Microsoft Keyboard Layout Creator 但发现它完全受到限制 因为您无法执行
  • C# mongodb驱动2.2.3如何设置游标的batchSize

    我正在使用 MongoDB 2 2 3 的官方 C 驱动程序 如何使用 C 驱动程序设置光标的批量大小 使用 javascript 我可以创建一个光标并为其设置批量大小 var cursor db statistics find query
  • 有效地查找集合中的项目[重复]

    这个问题在这里已经有答案了 如果我需要在集合中找到一个对象 该集合不包含用作索引的自然键 因此我无法使用 Map 有几种不同类型的谓词用于搜索集合 看起来效率很低 const items Array from mySet const fou
  • Laravel 公共文件夹

    我想知道是否有人可以解释为什么 Laravel 应用程序的 index php 文件位于公共目录中 如果我将其移至根目录 会有哪些风险 laravel 公共文件夹中的文件和文件夹旨在可通过网络访问 为了安全起见 laravel 框架中的所有
  • 如何修复 django.db.utils.DatabaseError

    如何修复 Django 数据库错误 我将 MongoDB 与 Djongo 一起使用 一切都工作正常 直到最近我决定添加 NewApp 每当我尝试迁移时 它都会向我打招呼 django db utils DatabaseError 我尝试手
  • jQuery循环幻灯片调整大小问题

    在此页面上 中间有一个 100 宽度的启动屏幕 并且每 8 秒旋转一次图形图像 我在这张幻灯片中有 3 个 div 主 div 包含幻灯片 内部 div 具有中继器背景图像 内部 div 内部具有渐变图像 问题1 当您尝试缩小浏览器时 网站
  • 如何使用 LINQ 编写 ContainsAll 查询? (C# LINQ-TO-SQL)[重复]

    这个问题在这里已经有答案了 假设我有以下内容 var mustHave new int 1 2 和一个名为 db Numbers 的表 public class Number public int id public int number
  • Powershell - Write-Host 在错误的位置打印

    我的代码具有以下功能 function status if args 0 eq Stopped Write Host NoNewline Stopped fore red 该函数用作 Write Host count i DisplayNa
  • java - 将多个列表背靠背写入单个 JsonArray 的最佳方法

    我的问题是将多个列表背靠背转换为单个 JsonArray 的最佳方法是什么 列表是动态出现的 所以我不想或不能将所有列表 list1 listn 合并到一个大列表中 然后使用 Jackson 将合并的列表写入 JsonArray Conve
  • 无法找到构建工具修订版 29.0.2 - Android Studio [重复]

    这个问题在这里已经有答案了 最近我将android studio更新到最新版本4 0后遇到了这个问题 我最近解决了这个问题 打开Android Studio 点击File gt Settings gt Appearance Behaviou
  • 包含具有特征参数的结构的框的大小

    我需要一个包含特征对象及其自身的结构 令人失望的是 以下代码无法编译 trait Foo struct Bar
  • NSOperationQueue:无法理解顺序[重复]

    这个问题在这里已经有答案了 我无法理解这条路NSOperationQueue works 假设我有 NSOperationQueue queue NSOperationQueue alloc init queue maxConcurrent
  • 如何在 Windows Phone 8 中安排重复任务来倒计时

    我只需要一个简单的任务 只要用户在一个特定的屏幕上就可以运行 该屏幕上有一个倒计时器 我研究了后台代理 但这似乎不是正确的方法 基本上它应该像这样工作 用户进入这个屏幕 按下开始按钮 连续计时器开始倒计时 每 30 秒更新一次是完全可以的
  • 如何修复 React Native 错误“jest-haste-map:Haste 模块命名冲突”?

    当我安装react native popup menu时 我遇到了这样的错误 这是错误代码 寻找 JS 文件E react native 正在加载依赖图 节点 9460 UnhandledPromiseRejectionWarning 错误
  • 如何在 FireFox 中禁用“此连接不受信任”证书?

    我有大约 700 多个链接需要检查 它们都是来自网站的长链接 它们是可信的 但 FireFox 不认为它们是可信的 那么如何禁用 此连接不受信任 或快速添加大量链接到受信任 试试这个插件 它应该做你想要的 https addons mozi
  • 为 IF 编写可变数量的参数

    我正在尝试编写一个函数来解决此问题的任何一般版本 如果我们列出所有 10 以下且是 3 或 5 的倍数的自然数 我们会得到 3 5 6 和 9 这些倍数的总和是 23 求 1000 以下的所有 3 或 5 的倍数之和 我针对这个例子解决这个
  • r 多列减法

    我的数据集的简化版本如下所示 Z dog1 mu1 Z dog2 mu1 Z dog3 mu1 Z cat1 mu1 Z cat2 mu1 Z cat3 mu1 0 0000 0 0000 0 0001 0 0005 0 0043 0 00
  • 允许多个浏览器持久登录时的数据库问题

    我正在尝试使用 cookie 实现 记住我 系统 该系统将跨浏览器记住用户 这意味着如果用户使用浏览器 A 登录网站并选中 记住我 然后使用 记住我 登录浏览器 B 无论他使用哪种浏览器 他都会继续自动登录 在浏览器 B 中选中 记住我 不
  • mysql 查询 where 和 order by 需要很长时间

    我有 700 万条记录的 mysql 数据库 当我运行查询时 select from data where cat id 12 order by id desc limit 0 30 查询需要很长时间 例如 0 4603 秒 但同样的查询没