我有一个查询:
SELECT a.nick,grp,count(*) FROM
help_mails
h JOIN accounts a ON h.helper=a.id WHERE closed=1 GROUP BY helper, grp, a.nick
这个加入有什么问题?当我提出 2 个查询时:
SELECT helper,grp,count(*) FROM
它快 100 倍。help_mails
h WHERE closed=1 GROUP BY helper, grp;
SELECT nick FROM accounts WHERE id IN (...)
解释返回这个:
id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE h ref 关闭关闭 1 const 1846 使用临时;使用文件排序 1 SIMPLE a ref PRIMARY PRIMARY 4 margonem.h.helper 1 使用 where;使用索引
accounts.id、help_mails.grp 和 help_mails.closed 获得了索引。