mysql max和order by_mysql – 为什么MAX()比ORDER BY慢100倍… LIMIT 1?
我有一个表foo(在其他20个之中)列bar,baz和quux以及baz和quux上的索引.该表有~500k行.
为什么以下查询的速度差异如此之大?查询A需要0.3秒,而查询B需要28秒.
查询A.
select baz from foo
where bar = :bar
and quux = (select quux from foo where bar = :bar order by quux desc limit 1)
说明
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY foo ref quuxIdx quuxIdx 9 const 2 "Using where"
2 SUBQUERY foo index NULL quuxIdx 9 NULL 1 "Using where"
查询B.
select baz from foo
where bar = :bar
and quux = (select MAX(quux) from foo where bar = :bar)
说明
id select_type table type possible_keys key key_len ref rows Extra
1 PRIMARY foo ref quuxIdx quuxIdx 9 const 2 "Using where"
2 SUBQUERY foo ALL NULL NULL NULL NULL 448060 "Using where"
我使用MySQL 5.1.34.
mysql max和order by_mysql – 为什么MAX()比ORDER BY慢100倍… LIMIT 1?相关推荐
- MYSQL查询之count(1)与max (case when then else end)用法小结
一.count(1)用法 1 问题:查询两门及其以上不及格课程的同学的学号,姓名及其平均成绩 2,表格:见Mysql的select多表查询嵌套二 3,代码: SELECT student.s_id,s ...
- mysql union order by_MySQL order by 在 union 中使用实例分析
下面是用于例子测试的两张原始数据表: article 文章表: aid title content 1 文章1 文章1正文内容... 2 文章2 文章2正文内容... 3 文章3 文章3正文内容... ...
- mysql 索引使用测试(group by、order by)
mysql 索引使用测试(group by.order by) ************************** 测试表 字段:id.name.age.distance 插入10万条数据 drop ...
- mysql 优先队列_深入浅出 MySQL 优先队列(你一定会踩到的order by limit 问题)
英语和算法是程序员的两条腿 本文适用于 MySQL 5.6 及以上版本 0.先抛问题 假设字段category无索引且有重复值,order by category 和limit组合使用的结果会和预期不 ...
- mysql union 出错_ORDER BY子句在MySQL中使用UNION时出错(Error with ORDER BY clause using UNION in MySQL)...
ORDER BY子句在MySQL中使用UNION时出错(Error with ORDER BY clause using UNION in MySQL) 我在MySQL中有以下查询: (SELECT ...
- mysql外部排序_深入浅出MySQL优先队列(你一定会踩到的order by limit 问题)
0.先抛问题 假设字段category无索引且有重复值,order by category 和 limit 组合使用的结果会和预期不符. 问题复现: 表结构(就是两个字段) CREATE TABLE ...
- mysql order by 语句_Mysql优化order by语句的方法详解
本篇文章我们将了解ORDER BY语句的优化,在此之前,你需要对索引有基本的了解,不了解的老少爷们可以先看一下我之前写过的索引相关文章.现在让我们开始吧. MySQL中的两种排序方式 1.通过有序索引 ...
- MySql学习(七)排序和分页(order by limit),及存在的坑
代码中被[]包含的表示可选,|符号分开的表示可选其一. 排序查询(order by) 电商中:我们想查看今天所有成交的订单,按照交易额从高到低排序,此时我们可以使用数据库中的排序功能来完成. 排序语法 ...
- 3ds Max 2019 Essential Training 3ds Max 2019基本培训 Lynda课程中文字幕
3ds Max 2019 Essential Training 中文字幕 3ds Max 2019基本培训 中文字幕3ds Max 2019 Essential Training 3ds Max以其建 ...
最新文章
- 鸿蒙开发-在JS中获取hml页面中Input输入的值
- C#数组解决约瑟夫环问题
- 如何将您的#100DaysOfCode登录转换为视觉体验
- mysql操作常用技巧
- 1w用户的并发量多大_QQ邮件订阅中心下线:卢松松博客曾经有1W多订阅用户
- C++中如何使用大整数__int 128
- 十八年开发经验分享(四)问题解决篇(下)
- 高数篇(二)-- 傅里叶变换 VS 拉普拉斯变换
- 2018-10-8-如何安装-btsync
- 企业微信网页应用开发 - 开发环境搭建
- Android Transition
- 现在第9代i7不能安装linux,9代I7的电脑如何重装系统?这可难不倒我,解决一共就八步!...
- 进一步解析ie环境下z-index问题解决方法
- uni-app 预编译器错误:代码使用了scss/sass语言,但未安装相应的编译器插件,请前往插件市场安装该插件
- 计算机教师素养有哪些内容,现代教师应具备哪些教育技术能力
- NFT Insider #54:BreederDAO将开启公募,游戏巨头万代南梦宫、育碧入局元宇宙
- 屏幕录制软件推荐,分享这3款,简单好用
- Android 学习论坛博客及网站推荐 1
- 前端获取验证码、手机号登录、注册功能
- 磁盘清理软件:DaisyDisk for Mac