Pada dasarnya, perbedaan antara keduanya adalah bahwa yang satu ditulis dengan cara yang lama, sementara yang lain ditulis dengan cara yang modern. Secara pribadi, saya lebih suka skrip modern menggunakan definisi dalam, kiri, luar, kanan karena mereka lebih jelas dan membuat kode lebih mudah dibaca.
Ketika berhadapan dengan inner joins, tidak ada perbedaan nyata dalam keterbacaan, namun, itu mungkin menjadi rumit ketika berhadapan dengan joins kiri dan kanan seperti pada metode yang lebih lama Anda akan mendapatkan sesuatu seperti ini:
SELECT *
FROM table a, table b
WHERE a.id = b.id (+);
Di atas adalah cara lama bagaimana gabungan kiri ditulis sebagai lawan dari yang berikut:
SELECT *
FROM table a
LEFT JOIN table b ON a.id = b.id;
Seperti yang dapat Anda lihat secara visual, cara modern cara penulisan skrip membuat kueri lebih mudah dibaca. (Ngomong-ngomong, hal yang sama berlaku untuk gabungan kanan dan sedikit lebih rumit untuk gabungan luar).
Kembali ke pelat ketel, itu tidak membuat perbedaan ke kompiler SQL bagaimana kueri ditulis saat menangani mereka dengan cara yang sama. Saya telah melihat campuran keduanya di database Oracle yang telah membuat banyak orang menulis ke dalamnya, baik yang lebih tua maupun yang lebih muda. Sekali lagi, ini bermuara pada seberapa mudah dibaca skrip dan tim yang Anda kembangkan.