Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/85.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
与sql查询混淆_Sql_Postgresql 9.2 - Fatal编程技术网

与sql查询混淆

与sql查询混淆,sql,postgresql-9.2,Sql,Postgresql 9.2,我有以下表格: Customer(login varchar, town varchar) Orders (Ordno int , login varchar) >>login Fk from Customer combination (Id int, ordno int ,Product_Id int) >>ordno fk from orders 我需要展示在所有城市销售的产品 例如: Insert into Customer (log1 , NY) (log2,

我有以下表格:

Customer(login varchar, town varchar)
Orders (Ordno int , login varchar) >>login Fk from Customer
combination (Id int, ordno int ,Product_Id int) >>ordno fk from orders
我需要展示在所有城市销售的产品

例如:

Insert into Customer (log1 , NY) (log2, NY) (log3, London)
Insert into Orders (1,log1) (2,log1) (3,log3) 
Insert into combination (1,1,1) (2,2,2) (3,3,1) 
  • 产品1在纽约销售
  • 产品2在纽约销售
  • 产品1在伦敦出售

如果可用的城市仅为纽约和伦敦,则查询结果中必须包含的唯一产品是产品1,但不确定您在这里到底想做什么

SELECT c.Town, cc.Product_Id FROM from Customer c
JOIN Orders o ON c.login = o.login
JOIN Combination cc ON o.Ordno = cc.ordNo
GROUP BY c.town
这将把城镇分组,并向您显示产品Id

您仍然需要产品表来显示产品表

此查询不包括产品表

SELECT  a.ProductID
FROM    Combination a
        INNER JOIN Orders b
            ON a.OrdNo = b.OrdNo
        INNER JOIN Customer c
            ON b.Login = c.LogIn
GROUP   BY a.ProductID
HAVING  COUNT(DISTINCT a.ID) = (SELECT COUNT(DISTINCT town) FROM Customer)

假设产品表如下所示:

Products (Product_Id int, Name)
你需要加入的东西一直到客户

SELECT p.Name, c.town
FROM Products p
  INNER JOIN Combination comb ON comb.Product_Id=p.Product_Id
  INNER JOIN Orders o ON o.Ordno=comb.ordno
  INNER JOIN Customer cust ON cust.login=o.login
GROUP BY p.Name, c.town

产品表在哪里?如果没有产品表,则无法选择产品详细信息。此外。。。你试过什么?城市信息在customer@SpaceApple当被问及产品而非城市时……这似乎是一个学校的项目,已经放在最后一天了。我想展示在所有城市销售的产品。不是城市
具有计数(不同的a.ID)
也可以更改为
具有计数(不同的a.ordNo)
参见此处