【发布时间】:2021-05-18 13:14:11
【问题描述】:
假设我有这些表:
Customer(CustomerID as PK), Order(OrderID as PK, CustomerID as FK), OrderDetails(OrderDetalisID as PK, OrderID as PK, ProductID as PK), Products(ProductID as PK, CategoryID as FK) and Category(CategoryID作为PK)。
例如,我怎样才能仅检索包含第 1 类和第 2 类产品的所有订单?
编辑:这是我尝试过的:
SELECT DISTINCT Order.Order_ID, Order.Order_Total, Customer.CustomerName
FROM Orders
JOIN Customers on Orders.CustomerID = Customers.CustomerID
JOIN OrderDetails ON Orders.OrderID = OrderDetails.OrderID
JOIN Products on OrderDetails.ProductID = Products.ProductID
WHERE Products.ProductID IN ( SELECT Products.ProductID FROM PRODUCTS
JOIN Category on Products.CategoryID = Category.CategoryID
WHERE Category.CategoryID = 1 OR Category.CategoryID = 2);
【问题讨论】:
-
您尝试过什么,遇到的问题是什么?
-
mysql和sqlite是两种不同的db产品,你用的是哪一种?
-
我已经编辑了帖子。
标签: sql