JOIN してから WHERE でフィルターするのとサブクエリ内でフィルターしてから JOIN するのはどちらが良いのでしょうか?
2023年12月12日解決済み
JOIN してから WHERE でフィルターするのとサブクエリ内でフィルターしてから JOIN するのはどちらが良いのでしょうか?
ユーザー
今回の例では
SELECT
comments.id, comments.comment, r.comment as parent
FROM
comments JOIN comments as r ON comments.parent_id = r.id
WHERE
r.parent_id = 2;
SELECT
comments.id, comments.comment, r.comment as parent
FROM
comments JOIN (
SELECT * FROM comments WHERE parent_id = 2
) as r ON comments.parent_id = r.id;
今回の例では
は同じ結果を得られると思いますが、パフォーマンスなどの点で差異はありますか?