在Bigquery的旧版 SQL中,我可以使用
SELECT DATE((UTC_USEC_TO_WEEK(TIMESTAMP_TO_USEC(TIMESTAMP('2017-04-13 20:58:06 UTC')), 0)))
Run Code Online (Sandbox Code Playgroud)
返回2017-04-09
。
BigQuery的标准 SQL中有没有办法做到这一点?似乎没有要任何等价物UTC_USEC_TO_WEEK
和UTC_USEC_TO_MONTH
。
看起来BigQuery有一个名为TIMESTAMP_TRUNC的函数,可以执行您想要的操作。当与Day日期部分一起使用时,它被称为LegacySQL中UTC_USEC_TO_DAY(t)的替代。它还接受“周”和“月”作为可能满足您要求的参数。
TIMESTAMP_TRUNC(TIMESTAMP '2008-12-25 15:30:00', WEEK, 'UTC')
Run Code Online (Sandbox Code Playgroud)
这是从旧版SQL迁移到标准sql的页面
小智 6
这是现在有效的更好选择:
select DATE_TRUNC(date( '2008-12-25 15:30:00'), month)
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
7158 次 |
最近记录: |