我之前使用Grouping Sets
来总结列中的所有内容以获得总计。
但是,我还没有找到一种方法来总结包含WHERE CLAUSE
的列,我想知道是否真的有办法使用Grouping Sets
执行此操作?
更新
以下是基本查询的示例:
我希望能够总结Deleted = 0
的所有内容。因为我不希望已删除的交易包含在总计中。但我仍然希望删除的交易显示在结果中。
SELECT
TP.CompanyID,
TP.CompanyName,
TP.PaidStatus,'
TP.Credit,
TP.Debit,
TP.Outstanding,
TP.Deleted
FROM
dbo.Posting TP
GROUP BY
GROUPING SETS((
CompanyID,
CompanyName,
PaidStatus,
Credit,
Debit,
OutStanding,
Deleted),())
答案 0 :(得分:2)
您可以将Where子句与GROUPING SETS一起使用,如下所示:
它应该有用。
SELECT
TP.CompanyID,
TP.CompanyName,
TP.PaidStatus,'
TP.Credit,
TP.Debit,
TP.Outstanding,
TP.Deleted
FROM
dbo.Posting TP
WHERE TP.Deleted = 0
GROUP BY
GROUPING SETS((
CompanyID,
CompanyName,
PaidStatus,
Credit,
Debit,
OutStanding,
Deleted),())