如何在 Google BigQuery 中获取日期名称
How to get Day name in Google BigQuery
如何从 Google BigQuery 中的日期获取日期。
我可以通过下面的查询实现这个
SELECT CASE WHEN DAYOFWEEK(CURRENT_DATE())=1 THEN 'Sunday' WHEN DAYOFWEEK(CURRENT_DATE())=2 THEN 'Monday'
WHEN DAYOFWEEK(CURRENT_DATE())=3 THEN 'Tuesday' WHEN DAYOFWEEK(CURRENT_DATE())=4 THEN 'Wednesday'
WHEN DAYOFWEEK(CURRENT_DATE())=5 THEN 'Thusday' WHEN DAYOFWEEK(CURRENT_DATE())=6 THEN 'Friday'
WHEN DAYOFWEEK(CURRENT_DATE())=7 THEN 'Saturday' END as [DOW]
是否有任何默认函数可用于获取当天的名称?
不,没有。根据 query reference (which you should bookmark :) ), most specifically the DateTime ones .
上的文档
您可以使用 DAYOFWEEK() 获取日期,就像您在查询中所做的那样。但仅此而已。
是的,标准SQL 和传统SQL 中都有等效的功能。
标准SQL
您可以使用 FORMAT_DATE() 函数,您可以在其中使用您喜欢的任何日期格式。
Link to Docs
示例:
#standardSQL
SELECT
CURRENT_DATE() AS date,
FORMAT_DATE('%A', CURRENT_DATE()) AS dow
旧版 SQL
有 STRFTIME_UTC_USEC() 函数。不过,它需要先将您的时间戳转换为 USEC。 Link to docs
示例:
#legacySQL
SELECT
CURRENT_DATE() AS date,
STRFTIME_UTC_USEC(TIMESTAMP_TO_USEC(TIMESTAMP(CURRENT_DATE())), '%A') AS dow
在Google的Big Query中,要使用的函数是:format_datetime('%A',yourdate)
而不是 2017 年发布的 format_date。
如上文 Medur Mamutov 所述。可以利用 format_date function and leverage the different formatting elements.
对于完整的工作日名称,请尝试:
SELECT FORMAT_DATE("%A", CURRENT_DATE())
如何从 Google BigQuery 中的日期获取日期。
我可以通过下面的查询实现这个
SELECT CASE WHEN DAYOFWEEK(CURRENT_DATE())=1 THEN 'Sunday' WHEN DAYOFWEEK(CURRENT_DATE())=2 THEN 'Monday'
WHEN DAYOFWEEK(CURRENT_DATE())=3 THEN 'Tuesday' WHEN DAYOFWEEK(CURRENT_DATE())=4 THEN 'Wednesday'
WHEN DAYOFWEEK(CURRENT_DATE())=5 THEN 'Thusday' WHEN DAYOFWEEK(CURRENT_DATE())=6 THEN 'Friday'
WHEN DAYOFWEEK(CURRENT_DATE())=7 THEN 'Saturday' END as [DOW]
是否有任何默认函数可用于获取当天的名称?
不,没有。根据 query reference (which you should bookmark :) ), most specifically the DateTime ones .
上的文档您可以使用 DAYOFWEEK() 获取日期,就像您在查询中所做的那样。但仅此而已。
是的,标准SQL 和传统SQL 中都有等效的功能。
标准SQL
您可以使用 FORMAT_DATE() 函数,您可以在其中使用您喜欢的任何日期格式。 Link to Docs
示例:
#standardSQL
SELECT
CURRENT_DATE() AS date,
FORMAT_DATE('%A', CURRENT_DATE()) AS dow
旧版 SQL
有 STRFTIME_UTC_USEC() 函数。不过,它需要先将您的时间戳转换为 USEC。 Link to docs
示例:
#legacySQL
SELECT
CURRENT_DATE() AS date,
STRFTIME_UTC_USEC(TIMESTAMP_TO_USEC(TIMESTAMP(CURRENT_DATE())), '%A') AS dow
在Google的Big Query中,要使用的函数是:format_datetime('%A',yourdate) 而不是 2017 年发布的 format_date。
如上文 Medur Mamutov 所述。可以利用 format_date function and leverage the different formatting elements.
对于完整的工作日名称,请尝试:
SELECT FORMAT_DATE("%A", CURRENT_DATE())