SQLは、参照の前に完全なテーブル名を付けることにより、列の修飾をサポートします。
SELECT tbl_names.id, tbl_section.id, name, section
FROM tbl_names
JOIN tbl_section ON tbl_section.id = tbl_names.id
...またはテーブルエイリアス:
SELECT n.id, s.id, n.name, s.section
FROM tbl_names n
JOIN tbl_section s ON s.id = n.id
テーブルエイリアスが推奨されるアプローチです。必要以上に入力するのはなぜですか?
これらのクエリはなぜ異なって見えるのですか?
次に、私の回答ではANSI-92 JOIN構文を使用しています(あなたはANSI-89です)。それらは同じように機能しますが、ANSI-89構文はOUTER結合(RIGHT、LEFT、FULL)をサポートしていません。 ANSI-89構文は非推奨と見なす必要があります。これを強化するために、ANSI-89構文に投票しないSOには多くの人がいます。 詳細については、この質問を参照してください 。