SQL 1:
SELECT
a.*,
b.name
FROM
t_coach a
LEFT JOIN t_school b on a.school_id=b.id
SQL 2:
SELECT a.*, (select b.name FROM t_school b WHERE b.id= a.school_id) AS name FROM t_coach a
SQL1 dan SQL2 mendapat hasil yang sama.
Bolehkah SQL kedua ditulis seperti ini dalam pembangunan sebenar?
Berbanding dengan SQL1, adakah SQL2 kurang cekap?
SQL1, jadual B hanya diimbas sekali
SQL2, jadual B akan diimbas seberapa banyak kali kerana terdapat rekod dalam jadual A
Apabila jumlah data dalam pangkalan data anda mencukupi, SQL2 tidak akan dapat menghasilkan keputusan secara langsung, dan akan membunuh pangkalan data