Kueri SQL berikut ini sama:
SELECT column1, column2
FROM table1, table2
WHERE table1.id = table2.id;
SELECT column1, column2
FROM table1 JOIN table2
ON table1.id = table2.id;
Dan tentu saja menghasilkan rencana permintaan yang sama pada setiap DBMS yang pernah saya coba.
Tetapi seringkali, saya membaca atau mendengar pendapat bahwa yang satu pasti lebih baik dari yang lain. Secara alami, klaim ini tidak pernah dibuktikan dengan penjelasan.
Di mana saya bekerja, versi kedua tampaknya disukai oleh mayoritas pengembang lainnya, jadi saya juga cenderung ke arah gaya itu untuk meminimalkan kejutan. Tetapi dalam hati saya, saya benar-benar memikirkan yang pertama (karena itulah awalnya saya mempelajarinya).
Apakah salah satu dari bentuk-bentuk ini secara obyektif lebih baik daripada yang lain? Jika tidak, apa yang menjadi alasan untuk menggunakan salah satunya?