You need to enable JavaScript to run this app. BigQuery SQL无硬编码排除当前财年(7.1至次年6.30)数据的方法
优惠活动
大模型
产品
解决方案
定价
更多

BigQuery SQL无硬编码排除当前财年(7.1至次年6.30)数据的方法

BigQuery动态排除当前财年数据实现方案

你已有的财年计算规则(给日期加6个月后取年份)可以直接复用在当前日期计算上,无需硬编码财年数值,就能实现过滤逻辑。

两种常见场景的实现代码

场景1:直接在查询中过滤,不需要提前生成财年字段

SELECT * 
FROM `TABLE A`
WHERE EXTRACT(YEAR FROM DATE_ADD(CalendarDate, INTERVAL 6 MONTH)) 
      != EXTRACT(YEAR FROM DATE_ADD(CURRENT_DATE(), INTERVAL 6 MONTH))

场景2:查询逻辑中已提前生成FinancialYear字段(CTE/子查询/视图场景)

WITH processed_table AS (
  SELECT
    *,
    EXTRACT(YEAR FROM DATE_ADD(CalendarDate, INTERVAL 6 MONTH)) AS FinancialYear
  FROM `TABLE A`
)
SELECT *
FROM processed_table
WHERE FinancialYear != EXTRACT(YEAR FROM DATE_ADD(CURRENT_DATE(), INTERVAL 6 MONTH))

逻辑验证说明:
比如当前日期为2024年5月(属于2023/2024财年),给当前日期加6个月得到2024年11月,提取年份为2024,和你原有逻辑计算的财年数值完全匹配;如果当前日期为2024年8月(属于2024/2025财年),加6个月后得到2025年2月,提取年份为2025,也和原有财年计算规则对齐,不会出现逻辑偏差。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.08 04:12:00