对具有一对多关系的3个表的SQL查询

时间:2014-12-09 22:13:12

标签: mysql sql e-commerce

我需要帮助找出我的电子商务网站的SQL查询

Users(customers / customer-service-reps)表

Orders

Line-Items(列是制造商,数量,等)表

用户拥有多个订单,订单包含多个订单项。

我正在尝试查找已提出1个或更多订单的用户列表,其中包含来自(' X-Parts'< - 制造商名称)的商品

非常感谢任何帮助

2 个答案:

答案 0 :(得分:0)

试试这个

SELECT U.UserID, COUNT(O.OrderID) OrderCount
FROM Users U INNER JOIN Orders O ON U.UserID = O.UserID
             INNER JOIN Line-Items L ON O.OrderID = L.OrderID
Where L.manufacturer = 'X-Parts'
Group BY U.UserID
Having count(O.orderID) >= 1

示例演示: - http://sqlfiddle.com/#!3/f1712/2

答案 1 :(得分:0)

Its one or more orders.

SELECT U.UserID, COUNT(O.OrderID) as OrderCount
FROM Users U 
INNER JOIN Orders O ON U.UserID = O.UserID
INNER JOIN Line-Items L ON O.OrderID = L.OrderID
Where L.manufacturer = 'X-Parts'
Group BY U.UserID
Having count(O.orderID) >= 1
相关问题