SQL, referansın önüne tam tablo adı ekleyerek bir sütunun nitelendirilmesini destekler:
SELECT tbl_names.id, tbl_section.id, name, section
FROM tbl_names
JOIN tbl_section ON tbl_section.id = tbl_names.id
... veya bir tablo takma adı:
SELECT n.id, s.id, n.name, s.section
FROM tbl_names n
JOIN tbl_section s ON s.id = n.id
Tablo diğer adı önerilen yaklaşımdır - neden gerekenden daha fazlasını yazasınız?
Bu Sorgular Neden Farklı Görünüyor?
İkinci olarak, cevaplarım ANSI-92 JOIN sözdizimini kullanıyor (sizinki ANSI-89). Aynısını gerçekleştirirken, ANSI-89 sözdizimi OUTER birleşimleri (RIGHT, LEFT, FULL) desteklemez. ANSI-89 sözdizimi kullanımdan kaldırılmış olarak kabul edilmelidir, SO'da bunu güçlendirmek için ANSI-89 sözdizimine oy vermeyecek birçok kişi var. Daha fazla bilgi için bu soruya bakın .
INNER JOIN
SQL-92 piyasaya çıktığından beri 'amortismana tabi tutulmayı' düşünüyorumNATURAL JOIN
.