私は最近いくつかの結果を引き出しようとしましたが、それを行うための正しいクエリを見つけるのに苦労していました。私が見たすべての例と私のMySQLの本のショーでさえ、次のように結合します。
SELECT *
FROM table_1
LEFT JOIN table_2 LEFT OUTER JOIN table_3 LEFT JOIN table_2
ON table_1.id = table_2.rel_id
AND table_1.id = table_3.rel_id
AND table_3.id = table_2.rel_id
WHERE table_1.some_col = some_vale;
これは機能せず、代わりに、解決策は次のようになりました。
SELECT *
FROM table_1
LEFT JOIN table_2 ON table_1.id = table_2.rel_id
LEFT OUTER JOIN table_3 ON table_1.id = table_3.rel_id
LEFT JOIN table_2 ON table_3.id = table_2.rel_id
WHERE table_1.some_col = some_value;
SELECT
これら2つのステートメントの違いは何ですか?それぞれをいつ使用する必要がありますか?どのように
結合がどのように機能するかを決定しますか?