查询一:
SELECT cid,
dl
FROM chal
WHERE cid IN (
SELECT cid
FROM c_users
WHERE uid = 636587
);
查询 2:
SELECT chal.cid AS cid,
chal.dl AS dl
FROM chal,
c_users
WHERE uid = 808
AND chal.cid = c_users.cid;
cid是chal中的主键 cid和uid在c_users中被索引,cid不是唯一的;
以上查询哪个更好?
解释说以下
查询 1 使用两种类型的索引,即 ALL 和 index_subquery
查询 2 个用户两种类型的索引,即 ALL 和 ref
我想知道为什么两个查询都说 ALL 作为索引类型,尽管 cid 是表 chal 中的主键。