求动态SQL的写法
现有语句如下,这个语句执行了后是可以查出截止9月30日为止科目100101的余额,
但是我现在的需求是查询出来9月1日到9月30日期间每天的余额。
SELECT SUM(T1.DEBIT-T1.CREDIT) AS 现金存款
FROM JDT1 T1
WHERE T1.REFDATE <= '2013-09-30'
AND T1.Account = '100101'
有人说可以用动态SQL实现,但我不知道怎么来写。谢谢啦,只能用22分,全都献上了
------解决方案--------------------把你的表结构贴出来,贴重点即可,文本方式,另外给点测试数据和期待结果
------解决方案--------------------先把表数据用文本形式贴出来看看
------解决方案--------------------try this,
select a.REFDATE,b.现金存款 from
(select dateadd(d,number,'2013-09-01') 'REFDATE'
from master.dbo.spt_values
where type='P' and number between 0 and 29) a
cross apply
(SELECT SUM(T1.DEBIT-T1.CREDIT) AS 现金存款
FROM JDT1 T1
WHERE T1.Account='100101' and T1.REFDATE<=a.REFDATE) b