SELECT dbo.items.NAME,
CONVERT(VARCHAR(20), dbo.warehouse.date, 101)AS Date,
Sum (dbo.warehouse.debit) AS Quantity
FROM dbo.warehouse
INNER JOIN dbo.items
ON dbo.warehouse.businessunitid = dbo.items.businessunitid
AND dbo.warehouse.itemid = dbo.items.itemid
GROUP BY dbo.items.NAME,
CONVERT(VARCHAR(20), dbo.warehouse.date, 101)
SQL Join查询以获取借方余额不等于0的借方余额的项目名称,日期和总和
看起来您正在使用SQL Server。
SELECT i.NAME,
CONVERT(VARCHAR(20), w.date, 101 ) AS Date,
Sum(w.debit) AS Quantity
FROM dbo.warehouse w INNER JOIN
dbo.items i
ON w.businessunitid = i.businessunitid AND
w.itemid = i.itemid
GROUP BY i.NAME, CONVERT(VARCHAR(20), w.date, 101)
HAVING Sum(w.debit) > 0;
假设这w.debit
绝不是消极的。(在金融应用程序中,美元金额通常总是正数。)当然,如果它可以是负数,则可能需要:
HAVING Sum(w.debit) <> 0;
或者:
HAVING Sum(w.debit) < 0;
视情况而定。
在许多其他数据库中,可以在HAVING
子句中使用别名:
HAVING Quantity > 0
但是SQL Server不支持此功能。
还要注意表别名的使用。这样可以更轻松地编写和读取查询。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句