【发布时间】:2013-10-21 02:18:11
【问题描述】:
我有以下表格:
VENDOR: PRODUCT: ITEM: STORE:
- VENDOR_ID - PRODUCT_ID - ITEM_ID - STORE_ID
- VENDOR_NAME - PRODUCT_DESC - STORE_ID - STORE_NAME
- VENDOR_ID - PRODUCT_ID - STORE_LOCATION
- ITEM_PRICE
ITEM 表本质上是商店的库存,告诉每个商店有哪些产品有库存。我想列出所有不向数据库中的任何商店提供任何产品的供应商。
这是我目前所拥有的:
SELECT DISTINCT VENDOR.VENDOR_NAME AS VENDORNAME
FROM VENDOR, PRODUCT, ITEM, STORE
WHERE NOT VENDOR.VENDOR_ID = PRODUCT.VENDOR_ID
AND NOT PRODUCT.PRODUCT_ID = ITEM.PRODUCT_ID
AND NOT ITEM.STORE_ID = STORE.STORE_ID;
现在,它返回所有供应商名称。你有什么想法可以让它只返回产品不在任何商店的供应商吗?谢谢。
【问题讨论】:
-
您的任务描述不清楚。您可能想要发布示例数据和预期结果。还要指出您使用的 RDBMS(SQL flavor)。