Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Database 在MS-ACCESS中,如何创建查询以获取从未销售过ProductId为13升或牛奶为1升的门店名称列表?下表:_Database_Ms Access - Fatal编程技术网

Database 在MS-ACCESS中,如何创建查询以获取从未销售过ProductId为13升或牛奶为1升的门店名称列表?下表:

Database 在MS-ACCESS中,如何创建查询以获取从未销售过ProductId为13升或牛奶为1升的门店名称列表?下表:,database,ms-access,Database,Ms Access,存储表 storeId | storeName 1 | ElevenStore 3 | SelkirkStore 4| CalgaryStore 5 | BordenStore 产品表 产品标识|产品名称 1|柴 2|红茶 3|枫糖浆 13 |牛奶1升 销售表 storeId | productId 1 | 1 1 | 2 1|3 1 | 1 3 | 13 3 | 12 4|3 4|1 5 | 13考虑: SELECT Store.* FROM Store WHERE storeID NOT I

存储表
storeId | storeName
1 | ElevenStore
3 | SelkirkStore
4| CalgaryStore
5 | BordenStore
产品表
产品标识|产品名称
1|柴
2|红茶
3|枫糖浆
13 |牛奶1升
销售表
storeId | productId
1 | 1
1 | 2
1|3
1 | 1
3 | 13
3 | 12
4|3
4|1
5 | 13

考虑:

SELECT Store.*
FROM Store
WHERE storeID NOT IN(SELECT storeID FROM Sales WHERE productID=13);
如果您希望所有产品不在每家商店销售,请考虑:

SELECT StoreProduct.*
FROM Sales RIGHT JOIN (SELECT Store.storeId, Store.storeName, Product.ProductID, Product.ProductName
FROM Store, Product) AS StoreProduct ON (Sales.productID = StoreProduct.ProductID) AND (Sales.[storeID] = StoreProduct.[storeId])
WHERE (((Sales.productID) Is Null))
ORDER BY StoreProduct.storeID, StoreProduct.productID;

谢谢。我快疯了。你能告诉我在哪里可以找到这个解释吗?还是有点困惑。我认为第一个问题是不言自明的。第二个使用笛卡尔查询(嵌套的SELECT语句)。笛卡尔查询没有JOIN子句,这意味着每个表的记录都与另一个表的每个记录相关联,以生成可能的存储/产品对的数据集。然后,该查询被连接到存储表以执行“查找不匹配”查询。