CREATE TABLE orders (
Order_ID int,
Product_ID int,
PRIMARY KEY(Order_ID,Product_ID)
);
INSERT INTO orders VALUES (1,1), (1,2), (1,3), (2,2), (2,3), (3,3), (3,4);
每个订单都有一套产品;我如何获得将订单 2 的产品集作为其产品集子集的所有订单?
我想得到结果
OrderID
--
1
2
为了进一步了解:
在示例中:订单 2 有产品 {2,3}
结果必须是订单 1 和 2,因为订单 1 有产品 {1,2,3} — 它有子集 {2,3}。另一方面,订单 3 的产品集是 {3,4} - 它没有子集 {2,3},因此它不能在结果中返回。