SQL账龄报告开发求助:将getdate()替换为2022-10-30
替换GETDATE()为固定日期生成SQL账龄报告
直接将代码里的getdate()替换为固定日期字符串'2022-10-30'即可,同时注意修正原代码里的拼写错误(whn应为when)。另外原SQL中select语句里的trans_date、trans_amount未包含在group by子句中,这在多数SQL引擎下会触发语法错误,建议根据实际需求调整:
方案1:移除不需要的列
如果不需要展示trans_date和trans_amount,修改后的代码如下:
Select customer_id, billing_period , sum(case when datediff(day, trans_dte, '2022-10-30') between 0 and 30 then [amt] else 0 end) as [30_days] group by billing_period, customer_id
方案2:保留列并调整聚合逻辑
如果需要保留trans_date和trans_amount,需对这两列使用聚合函数(如取最大日期、汇总金额)或添加到group by中,示例如下:
Select customer_id, max(trans_date) as trans_date, sum(trans_amount) as trans_amount, billing_period , sum(case when datediff(day, trans_dte, '2022-10-30') between 0 and 30 then [amt] else 0 end) as [30_days] group by billing_period, customer_id
内容的提问来源于stack exchange,提问作者Yoly98
相关产品推荐
相关产品推荐

