SQL问题 [英] SQL Issue
问题描述
我正在尝试将订单表与付款表和客户表链接起来。可能有也可能没有付款,我需要显示没有付款的订单。我使用以下SQL,但我收到语法错误。有人可以给我一些建议吗?非常感谢。
I am trying to link an Orders Table with both a Payment Table and a Customer Table. There may or may not be payments and I need the Orders with no payments to be displayed. I was using the following SQL, but I get a syntax error. Could someone please give me some advice. It would be greatly appreciated.
SELECT Order.Order_ID,Order.Order_Date,Order。[Order Total],Payment.Payment_ID,Payment.Payment_Date,Payment.Payment_Amount,Customer.Cust_ID,Customer .Cust_LName,Customer.Cust_FName
SELECT Order.Order_ID, Order.Order_Date, Order.[Order Total], Payment.Payment_ID, Payment.Payment_Date, Payment.Payment_Amount, Customer.Cust_ID, Customer.Cust_LName, Customer.Cust_FName
FROM([订单] LEFT JOIN付款订单。[Order_ID] =付款。[Order_ID])INNER JOIN(客户INNER JOIN订单ON客户。[Cust_ID ] =订单。[Cust_ID])ON客户。[Cust_ID] =订单。[Cust_ID];
FROM ([Order] LEFT JOIN Payment ON Order.[Order_ID] = Payment.[Order_ID]) INNER JOIN (Customer INNER JOIN Order ON Customer.[Cust_ID] = Order.[Cust_ID]) ON Customer.[Cust_ID]=Order.[Cust_ID];
我现在试过这个:  ;
I have now tried this:
SELECT Order.Order_ID,Order.Order_Date,Order。[Order Total],Payment.Payment_ID,Payment.Payment_Date,Payment.Payment_Amount,Customer.Cust_ID,Customer_LName,Customer_FName
SELECT Order.Order_ID, Order.Order_Date, Order.[Order Total], Payment.Payment_ID, Payment.Payment_Date, Payment.Payment_Amount, Customer.Cust_ID, Customer_LName, Customer_FName
FROM(订单LEFT JOIN对Order.Order_ID = Payment.Order_ID的付款)INNER JOIN Customer ON Payment.Cust_ID = Customer.Cust_ID
FROM (Order LEFT JOIN Payment on Order.Order_ID = Payment.Order_ID) INNER JOIN Customer ON Payment.Cust_ID = Customer.Cust_ID
ORDER BY Order.Order_ID,Order.Order_Date,Order。[Order Total],Payment.Payment_ID,Payment.Payment_Date,Payment.Payment_Amount,Customer.Cust_ID, Customer_LName,Customer_FName;
ORDER BY Order.Order_ID, Order.Order_Date, Order.[Order Total], Payment.Payment_ID, Payment.Payment_Date, Payment.Payment_Amount, Customer.Cust_ID, Customer_LName, Customer_FName;
我的最新尝试:
My latest attempt:
SELECT Order.Order_ID,Order.Order_Date,Order。[Order Total],Payment.Payment_ID,Payment.Payment_Date,Payment.Payment_Amount,Customer。 Cust_ID
SELECT Order.Order_ID, Order.Order_Date, Order.[Order Total], Payment.Payment_ID, Payment.Payment_Date, Payment.Payment_Amount, Customer.Cust_ID
FROM([订单] LEFT JOIN付款订单。[Order_ID] =付款。[Order_ID])
INNER JOIN客户付款.Cust_ID =客户.Cust_ID;
FROM ([Order] LEFT JOIN Payment ON Order.[Order_ID] = Payment.[Order_ID])
INNER JOIN Customer on Payment.Cust_ID = Customer.Cust_ID;
推荐答案
尝试使用从Order向外向同一方向的所有外连接。这在设计视图中最容易做到。
Try using all outer joins that go in the same direction outwards from Order. This is easiest to do in Design View.
这篇关于SQL问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!