我有以下mysql表:

item code | warehouse | qty
---------------------------
itm001    |    abc    |10
itm002    |    xyz    |20
itm003    |    pqr    |20
itm004    |    pqr    |15
itm001    |    abc    |60
itm002    |    xyz    |10
itm004    |    tqr    |20
itm003    |    www    |20
itm001    |    ppp    |15

我要商品代码和仓库重复它们的总数量的总和:
例如:
ITM001 ABC重复两次,其总和显示为ITM001=70
与itm002相同,显示sum itm002=30。
我不想要静态where子句(where item code='itm001'和warehouse='abc'或item code='itm002'和warehouse='xyz')。

最佳答案

您应该将GROUP BYHAVING一起使用:

SELECT itemcode,warehouse,SUM(qty) FROM yourtable
GROUP BY itemcode,warehouse
HAVING COUNT(*) > 1;

HAVING筛选出仓库中只存在一次的项。

07-26 09:34