作者s861175 (s861175)
看板Database
标题[SQL ] join 3个表 无法索引? (用 Explain检查)
时间Mon Mar 31 18:07:13 2014
(针对
SQL 语言的问题,用这个标题。请用 Ctrl+Y 砍掉这行)
资料库名称:
mysql
资料库版本:
5.0.51a
内容/问题描述:
表a (id:index)
id
__
1
2
3
表b (id:index, item:index)
id | item
_________
1 | 001
1 | 002
2 | 001
表c (id:index, item:index)
id | item
_________
1 | 001
2 | 001
语法:
EXPLAIN
SELECT a.id
FROM a
INNER JOIN b ON a.id = b.id
INNER JOIN c ON b.id = c.id AND b.item = c.item
结果:
table | type
_____________
a | index
b | ref
c | ALL
问题:
我的表c有设index,EXPLAIN的type却是ALL,实际查询时也很慢,
请问是我的join语法错误吗?
还是join 3个表有其他建议的做法?
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 118.163.71.162
※ 文章网址: http://webptt.com/cn.aspx?n=bbs/Database/M.1396260436.A.827.html
※ s861175:转录至看板 PHP 03/31 18:08
※ s861175:转录至看板 PHP 03/31 18:12