我有以下查询:
Select diary_id,
(select count(*)
from `comments` as c
where c.d_id = d.diary_id) as diary_comments
From `diaries` as d
Run Code Online (Sandbox Code Playgroud)
这需要很长时间(在我的情况下接近0.119415).如何让它更快?
我只看到一种方法:对主查询中的每一行的注释编号进行额外查询.但这就像在循环中进行查询一样.就像是:
while ($r = mysql_fetch_array($res))
{
$comments = mysql_query("select count(*) from `comments` where d_id = ".$r['diary_id']);
}
Run Code Online (Sandbox Code Playgroud)
我认为这是一个糟糕的策略.还有其他建议吗?