我知道标题不清楚所以让我解释一下我的问题:
假设我有2个表:
表“预订”
number
表“CUSTOMERS”
ID | reservationNum
每个客户都可以进行多次预订。
根据客户ID列表,我需要获取所有属于他们的预订列表
例如:
客户1预订了100,200和300
客户2预订了100,200和400
客户3预订了100,200,300和600
结果将是{100,200}
怎么办?我需要运行什么查询?
答案 0 :(得分:1)
我对你的架构有点不确定,但基本上你应该做的就是计算在客户ID过滤的集合中预订发生的次数,然后检查计数是否等于顾客。
SELECT reservationNum
FROM Customers
WHERE Id IN (/* the list of customer ids */)
GROUP BY reservationNum
HAVING COUNT(1) = /* count of the list of customer ids */