【发布时间】:2020-03-07 04:41:52
【问题描述】:
我目前正在学习 SQL 的基本知识,并且我有一个来自学校的教程,内容如下: 所有商店(storeid) 销售(productid, storeid) 部分产品(productid) 如果一家商店销售的所有产品都没有被任何其他商店出售,则该商店被视为垄断。 如何找到垄断? 我正在考虑从 2 个相同的表中选择 storeid,但我不确定如何从那里继续。
表格如下:
商店:
+-----------+
| storeid |
+-----------+
| --------- |
| 1 |
| 2 |
| 3 |
| 4 |
| 5 |
+-----------+
产品:
+-------------+
| productid |
+-------------+
| --------- |
| 1 |
| 2 |
| 3 |
| 4 |
| 5 |
| 6 |
+-------------+
卖出:
+--------------------------+
| productid | storeid |
+--------------------------+
| -----------+------------ |
| 1 | 1 |
| 2 | 1 |
| 2 | 2 |
| 3 | 2 |
| 1 | 2 |
| 3 | 3 |
| 2 | 4 |
| 4 | 4 |
| 5 | 5 |
| 6 | 5 |
+--------------------------+
所以根据我的统计,只有 5 号商店被认为是垄断的,因为他们销售的产品是其他商店没有的。
【问题讨论】:
标签: mysql sql postgresql