You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Oracle中基于SQL实现月度报表的求助(已实现周度报表)

解决方案

针对Oracle数据库生成月度报表的需求,只需调整WHERE子句的日期筛选条件即可,以下是两种简单可行的方案:

方案1:匹配当月完整日期范围

使用TRUNC和LAST_DAY函数锁定当前月份的首尾日期,确保包含当月所有时间的数据:

CAST("AR Origination Date"."Day Cal Date" AS DATE) BETWEEN TRUNC(SYSDATE, 'MM') AND LAST_DAY(SYSDATE)
  • TRUNC(SYSDATE, 'MM'):返回当前月份的第一天(时间部分为00:00:00)
  • LAST_DAY(SYSDATE):返回当前月份的最后一天(若需严格包含当月所有时刻,可改为TRUNC(LAST_DAY(SYSDATE)) + 1 - INTERVAL '1' SECOND)

方案2:直接匹配月份

通过截断日期到“月份”维度,直接判断是否属于当前月份,写法更简洁:

TRUNC(CAST("AR Origination Date"."Day Cal Date" AS DATE), 'MM') = TRUNC(SYSDATE, 'MM')
  • TRUNC(date, 'MM')会将日期截断为当月第一天(去除时间部分),只要两个截断后的值相等,就说明数据属于当前月份。

内容的提问来源于stack exchange,提问作者Ogdog13

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.03 21:52:33