在 Bigquery 中,对于日期字段的值进行筛选时,需要进行时区转换。如果不进行转换,就会出现“Bigquery timezone conversion error while parsing date”的错误。解决此问题的方法如下:
示例代码如下:
-- 确认表的时区设置
SELECT TIME_ZONE, UTC_USEC_TO_DAY(CURRENT_TIMESTAMP()) AS TODAY
FROM my_dataset.my_table_limit_10
;
-- 将日期字段转换为指定时区
SELECT PARSE_DATE('%Y%m%d', DATE_FIELD, 'America/Los_Angeles') AS LOS_ANGELES_DATE
FROM my_dataset.my_table
WHERE DATE_FIELD IS NOT NULL;
-- 对转换后的日期字段进行筛选
SELECT COUNT(*)
FROM my_dataset.my_table
WHERE PARSE_DATE('%Y%m%d', DATE_FIELD, 'America/Los_Angeles') > '2022-01-01';
上一篇:BigQuery时区转换