當聯接表可以傳統上使用加入像爲什麼選擇從多個表中沒有加入
SELECT * FROM t1, t2 WHERE t1.id = t2.t1_id;
的SQL89方法,但是由於SQL92標準,我們現在可以加入使用JOIN語法
SELECT * FROM t1 JOIN t2 on t1.id=t2.t1_id;
有沒有什麼理由爲什麼有人會從多個表中加入SELECT
? 現在,我知道人們使用UNION
連接數據,但這不是我正在談論的。
爲什麼我們在FROM
條款中嚴格爲了向後兼容性而使用逗號添加表格?還是有沒有任何現實的情況下使用舊的語法是不可能的,只做聯接?
爲什麼我們會使用乘法,而我們可以使用和數循環?無論如何,+1 –
可能的重複[爲什麼不是SQL ANSI-92標準更好地採用ANSI-89?](http://stackoverflow.com/questions/334201/why-isnt-sql-ansi-92-standard -better-adopt-by-ansi-89) – LittleBobbyTables
'有什麼理由說有人會從多個表中選擇不加入?'也許他們想要一個笛卡爾積? – LittleBobbyTables