JOIN ve INNER JOIN arasındaki fark

Bu iki birleştirme de bana aynı sonuçları verecektir:

SELECT * FROM table JOIN otherTable ON table.ID = otherTable.FK

vs

SELECT * FROM table INNER JOIN otherTable ON table.ID = otherTable.FK

İfadeler arasında performans veya başka bir açıdan bir fark var mı?

Farklı SQL uygulamaları arasında farklılık gösteriyor mu?

Çözüm

İşlevsel olarak eşdeğerdirler, ancak INNER JOIN, özellikle sorguda başka birleştirme türleri (yani LEFT veya RIGHT veya CROSS) varsa, okunması biraz daha kolay olabilir.

Yorumlar (5)

Hayır, hiçbir fark yok, saf syntactic sugar.

Yorumlar (5)

Benzer şekilde OUTER JOINlerde de "OUTER" kelimesi isteğe bağlıdır. JOINi bir"OUTER" JOINyapanLEFTya daRIGHT` anahtar sözcüğüdür.

Ancak bazı nedenlerden dolayı her zaman "OUTER" yani LEFT OUTER JOIN kullanıyorum ve asla LEFT JOIN kullanmıyorum, ancak asla INNER JOIN kullanmıyorum, bunun yerine sadece "JOIN" kullanıyorum:

SELECT ColA, ColB, ...
FROM MyTable AS T1
     JOIN MyOtherTable AS T2
         ON T2.ID = T1.ID
     LEFT OUTER JOIN MyOptionalTable AS T3
         ON T3.ID = T1.ID
Yorumlar (3)