设为首页
收藏本站
开启辅助访问
全部
问与答
创意
技术
酷工作
生活
交易
节点
飞墙
Follow
明白贴
工算小助手
登录
注册
飞社-令人惊奇的创意工作者社区-
›
首页
›
程序员
›
请教 DBA 一个小白问题
FSHEX=FIND+SHARE+EXPRESS
飞社-令人惊奇的创意工作者社区- 是一个关于发现分享表达的地方
现在登录
没有账号?
立即注册
推荐主题
›
2026 年了,为什么我依然认为 Rust 是过度
›
同事刮刮乐中了 100 万
›
请教各位什么是技术管理?忙一年发现没干技
›
似乎永远无法走出失恋
›
[求助] 涨薪 20% 的新公司 vs 离家 5 分钟
今日热议主题
出科赋台式机内存条
Windows 笔记本的续航上来了
用 ACE Step 训练了一个 Michael Jackson
文件快递柜:文件传输助手
Vibe Coding 了一个 Windows 上的 AirPlay
深夜吐槽:人脸识别是一项对老年人非常不友
📱 继续收一台 iPhone 12/13 Pro
Gemini 邀请好友免费送 4 个月的活动还有吗
[openclaw] Unhandled promise rejection:
怎么感觉流动性出大问题了呢,要不要清仓跑
显示全部
|
最新评论
11 条回复
·
277 次点击
11#
xlzyxxn
小成
2024-9-5 09:56:37
请教 DBA 一个小白问题
mysql 连接查询用的是嵌套循环算法,你这几个 sql 都是左连接或者右连接,驱动表和被驱动表已经确定了;你需要的是为每个表选择成本最低的访问方案;问题 1 问的没太懂,看看嵌套循环执行的步骤你可能就懂了;问题 2 第二种把驱动表缩小到了 10 条记录,扇出次数比第一种要少(在 mysql 没对第一种做优化的时候),效率肯定高,具体执行时 mysql 到底对第一种 sql 做没做优化这个就不清楚了
12#
ZZ74
小成
2024-9-5 10:01:44
请教 DBA 一个小白问题
没特意查过,根据过往经验
A1 先 join ,但是实际性能和你 on on a.id=b.fid and a.id=10 这样的写法性能是一样的。就是数据库会优化
A2 绝大多数情况下,后者可以确保效率至少和前者一样,但是数据库可能会优化,取决于数据量和数据库类型。
13#
sagaxu
初学
2024-9-5 10:20:52
请教 DBA 一个小白问题
第一个问题,数据库一般会自己优化
https://dev.mysql.com/doc/refman/8.4/en/condition-filtering.html
第二个问题,第 2 个查询效率 >= 第 1 个,看 DB 的优化
14#
kosmgco
小成
2024-9-5 10:29:20
请教 DBA 一个小白问题
问题 1: 等值传递,优化器会拆成两个子查询 [from a where id = 10, from b where fid = 10],先 where 再 join 能少很多 io
问题 2:如果 a 数据量比较大,第二种方式左表的数据量会大大减少,会比第一种方式更快,
但是两种方式的结果不一样,第一种方式是先 join 再 order by 再 limit ,最终结果 10 条是确定的,第二种方式结果条数就不一定了
1
2
/ 2 页
浏览过的版块
Android
投资
生活
汽车
Apple
职场话题
推广
二手交易
Markdown
返回顶部