テーブルを結合するとき(以下の例のように)、テーブルの結合と必要な列のみを含むサブクエリの結合の効率は異なりますか?テーブル結合の効率の問題
つまり、これらの2つのテーブルの間に効率に違いはありますか?
SELECT result
FROM result_tbl
JOIN test_tbl USING (test_id)
JOIN sample_tbl USING (sample_id)
JOIN (SELECT request_id
FROM request_tbl
WHERE request_status='A') USING(request_id)
SELECT result
FROM (SELECT result, test_id FROM result_tbl)
JOIN (SELECT test_id, sample_id FROM test_tbl) USING(test_id)
JOIN (SELECT sample_id FROM sample_tbl) USING(sample_id)
JOIN (SELECT request_id
FROM request_tbl
WHERE request_status='A') USING(request_id)
良い質問 - 誰かにもっと知識豊かな答えをさせてくれますが、DBエンジンは両方のケースで同じ数の列に参加する必要があるため、2つは効率について同じです同じ数の行で(たとえフィールドの数が少なくても)。私が間違っているなら私を訂正してください! – AndreiM
マーク・ブラディはこの質問を愛していただろうが、nooooo ....ここのエリートたちは、彼の力を握って彼を怖がっていた。 – TheSoftwareJedi
この問題は、SQLサーバーがより優れていることを誰もが知っており、私たちはこれを尋ねる必要さえないので、関連性がなくなったので閉じます。 – TheSoftwareJedi