【问题标题】:BigQuery SQL Query to get First Day of Previous Quarter and Last Day of Previous QuarterBigQuery SQL 查询以获取上一季度的第一天和上一季度的最后一天
【发布时间】:2021-07-27 02:36:59
【问题描述】:

我有一个来自 Teradata 的查询,我正在迁移到 Google BigQuery。在我的 WHERE 语句中,我需要从今天开始的上一季度的数据。 TeraData如下:

WHERE ((visit_date >= TRUNC(ADD_MONTHS(CURRENT_DATE, -3), 'Q')
AND  visit_date <=TRUNC(CURRENT_DATE, 'Q') - 1)) 

如何在 google Big Query 中进行类似的查询?我试过使用

WHERE ((visit_date >= TRUNC(DATE_ADD(CURRENT_DATE, INTERVAL -3 MONTH), 'Q')
AND  visit_date <=TRUNC(CURRENT_DATE, 'Q') - 1))

但是这个 DATE_ADD 不起作用。有人可以帮忙吗?

【问题讨论】:

    标签: sql google-bigquery


    【解决方案1】:

    分别使用DATE_TRUNC(DATE_SUB(CURRENT_DATE, INTERVAL 3 MONTH), QUARTER)DATE_TRUNC(CURRENT_DATE, QUARTER) - 1

    原来如此

    WHERE ((visit_date >= DATE_TRUNC(DATE_SUB(CURRENT_DATE, INTERVAL 3 MONTH), QUARTER)
    AND  visit_date <= DATE_TRUNC(CURRENT_DATE, QUARTER) - 1)) 
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-09-30
      • 1970-01-01
      • 1970-01-01
      • 2013-09-04
      • 1970-01-01
      • 2010-09-23
      • 1970-01-01
      相关资源
      最近更新 更多