【发布时间】:2016-03-23 05:16:40
【问题描述】:
我有以下查询,它工作正常,它显示了该特定位置的所有值,退款金额是多少。但是,如果我想显示月度报告,我需要在我的表 1 中显示那些日子没有退款,并显示相同的零值:
SELECT businessDate AS 'Business Date'
,Sum(convert(DECIMAL, ISNULL(T1.Amount, 0)) * 1) AS 'Refund Amount'
FROM table1 T1
WHERE (
(T1.id = '1')
AND (T1.businessDate BETWEEN '20160201' AND '20160229')
AND (T1.Amount IS NOT NULL)
)
GROUP BY T1.businessDate
我当前的输出是:
Business Date Refund Amount
20160202 14
20160203 19
应该是:
Business Date Refund Amount
20160201 0
20160202 14
20160203 19
那么如何修复我的查询以满足上述问题??
【问题讨论】:
-
如果您没有建立临时日期表的几种方法。stackoverflow.com/questions/7812986/… 那么您只需要留下加入即可
-
@JamieD77 非常感谢 :)... 现在可以使用了
标签: sql sql-server sql-server-2008 sql-server-2012