JOINS について簡単な質問があります。
table2 で使用されている table1 の項目の数を知りたい場合は、INNER JOIN または LEFT JOIN を使用します (以下を参照)。
INNER JOIN は、「ID」が両方のテーブルのどこにあるかを示すので、table1 の ID が table2 で使用されている場合を表す必要がありますが、ID が table1 ID (LEFT JOIN) と同じであるすべての table2 をリストすると、同じ結果が返されますか?
しかし、結果は異なります。
INNER JOIN は 252,222 を返します LEFT JOIN は 258,637 を返します
PS: table2 は table1 の子であるため、table2 ID は table1 (table1 は製品のリスト、table2 は選択された製品のリスト) からのみ取得できます。
SELECT DISTINCT
t1.name, t1.details
FROM
table1 AS t1
INNER JOIN
table2 AS t2 ON t1.id = t2.t1_id
SELECT DISTINCT
t1.name, t1.details
FROM
table1 AS t1
LEFT JOIN
table2 AS t2 ON t1.id = t2.t1_id
どちらが正しいSQLになりますか、私はINNER JOINを推測しています。