我在下面給出的查詢中是否有任何錯誤。爲什麼左連接顯示錯誤?
SELECT * FROM employee Left JOIN bonus;
我已經使用sqlfiddle在線執行此操作。它向我顯示了一個錯誤。
,也正在面臨的問題進行全面外部聯接。
SELECT * FROM bonus FULL OUTER JOIN employee ON employee.id=bonus.id;
我在下面給出的查詢中是否有任何錯誤。爲什麼左連接顯示錯誤?
SELECT * FROM employee Left JOIN bonus;
我已經使用sqlfiddle在線執行此操作。它向我顯示了一個錯誤。
,也正在面臨的問題進行全面外部聯接。
SELECT * FROM bonus FULL OUTER JOIN employee ON employee.id=bonus.id;
如果不使用ON
,所有連接都自動成爲CROSS JOIN
。你可以用CROSS JOIN
來試試。下面是MySQL文檔:http://dev.mysql.com/doc/refman/5.5/en/join.html
使用LEFT或RIGHT時不是這樣。在這種情況下,必須或使用子句指定的,否則,你得到一個錯誤 - 也對MySQL的(我只是測試它使用sqlfiddle:http://sqlfiddle.com/#!2/a2581/14559) – Dan
@丹是使用on子句是內部連接和外部連接的持久性。如果不使用,它將作爲交叉連接。我的理解是否正確。 –
每文檔:http://dev.mysql.com/doc/refman/5.5/en/join.html
join_table:
table_reference [INNER | CROSS] JOIN table_factor [join_condition]
| table_reference STRAIGHT_JOIN table_factor
| table_reference STRAIGHT_JOIN table_factor ON conditional_expr
| table_reference {LEFT|RIGHT} [OUTER] JOIN table_reference join_condition
| table_reference NATURAL [{LEFT|RIGHT} [OUTER]] JOIN table_factor
在MySQL上是可選的加入,而不是左外連接或右外連接。
什麼錯誤給你? – Sal00m
發佈sql小提琴。 – Mihai
我在線執行了此查詢。在W3學校工作正常。但是它的sqlfiddle顯示「你的SQL語法有錯誤;檢查與你的MySQL服務器版本相對應的手冊,以便在第一行使用正確的語法」select * from employee employee left join bonus「 –