1
我一般在MySQL和數據庫上總是noob,但我試圖通過創建一些虛構的數據庫來改善它。 我正在嘗試使用JOIN查詢從4個不同的完全填充的表中提取數據。使用:對於填充的整個表,SQL查詢返回空值
SELECT orders.OrderID,orders.customerID,orders.orderdate,orders.notes, Customer.*, orderitem.qty, donut.*
FROM Customer INNER JOIN OrderItem
Left Join orders ON customer.customerID = orders.orderID
AND orders.orderID = orderitem.OrderID
Left JOIN donut ON orderitem.donutID = donut.donutID
WHERE orders.customerID = 002 or customer.customerID = 001 ;
使用此,我從我的「訂單」表中有4列的所有NULLS。這些列中的每一列都有數據。我知道(我認爲)它與「從客戶內部連接訂單項 左加入訂單ON customer.customerID = orders.orderID」的問題,因爲如果將其切換到右連接,它填充「訂單」表信息,並使所有其他表返回NULLS。我只是完全喪失。
廢話。這完全解決了它,你的第一個建議。我可以發誓我嘗試過。謝謝。我確實嘗試了第二個代碼建議,並返回一個空集。但是再次感謝你! – Talenus
@Talenus原來的連接條件中的錯誤也在第二個建議中,在這裏,所以我懷疑'ON c.customerID = o.orderID'的意圖是'ON c.customerID = o.customerID'。 –