Mysql5 ile birlikte gelen birçok yenilikle beraber bir takım syntax değişikliğide gelmiş durumda :)
Örneğin, bugs.mysql.org adresinde cevabını bulduğum bir değişiklik :
mysql 5 'ten düşük versiyonlarında çalışan aşağıdaki örnek sorgu mysql 5'te "unknown column XXX in 'on clause' when column exists" şeklinde hata veriyor.
SELECT 1 FROM student s, slp_calendar scal, subject LEFT JOIN slp_commentary sc ON sc.sid=s.id LIMIT 1;
mysql> SELECT 1 FROM student s, slp_calendar scal, subject LEFT JOIN slp_commentary sc -> ON sc.sid=s.id LIMIT 1;
ERROR 1054 (42S22): Unknown column 's.id' in 'on clause'
Ancak sorgudaki FROM deyiminden sonra gelen tablo isimlerini () parantez işaretleri arasına alınca düzgün olarak çalışyor.
mysql> SELECT 1 FROM (student s, slp_calendar scal, subject) LEFT JOIN slp_commentary sc -> ON sc.sid=s.id LIMIT 1;
Empty set (0.00 sec)
Bu soruna ait orjinal adres : http://bugs.mysql.com/bug.php?id=15606
Bu arada bu bir bug değilmiş, bilginiz olsun:)
Yazan : Burak Sönmez