以下是我的表格:
Table: Catalog Table: Inventory
-------------- ----------------
catalogId - int [PK] inventoryId - int [PK]
itemName - nvarchar inventoryTimeStamp - datetime
itemType - bit quantity - float
catalogNumber - int catId - int [FK]
我的问题是: 我如何加入表格(左加入)和&总结清单表中项目的数量,这样我就可以打印:itemName,catalogNumber&总和。
我试过了:
SELECT Catalog.itemName, Inventory.catId, SUM(Inventory.quantity) AS Sum
FROM Catalog
LEFT JOIN Inventory ON Inventory.catId = Catalog.catalogId
GROUP BY Inventory.catId
但我得到一个例外:
专栏' Catalog.itemName'在选择列表中无效,因为它是 不包含在聚合函数或GROUP BY子句中。
我该怎么办?
答案 0 :(得分:0)
添加
GROUP BY Catalog.itemName, Inventory.catId, Inventory.quantity
它会起作用。
如果您有sum
,count
等,则需要在查询结尾添加GROUP BY
答案 1 :(得分:0)
您只需将所有非聚合列添加到GROUP BY
子句
SELECT Catalog.itemName,
Inventory.catId,
SUM(Inventory.quantity) AS Sum
FROM Catalog
LEFT JOIN Inventory
ON Inventory.catId = Catalog.catalogId
GROUP BY Catalog.itemName, Inventory.catId
答案 2 :(得分:0)
您需要从Catalog.itemName
中移除SELECT
或将其包含在Group By
条款中。