Big Query 仅使用 YY 格式解析字符串中的日期 - 强制 Big Query 选择 1900 年代

Big Query parsing dates from string with only YY format - force Big Query to choose 1900s

提问人:Fran 提问时间:8/21/2023 更新时间:8/31/2023 访问量:33

问:

我在Big Query中有一个表,其出生日期是字符串,写为dd-mmm-yy。当我尝试使用 parse_date(“%d-%h-%y”,DATE_OF_BIRTH) 解析日期时,它会将其中一些出生日期作为未来日期,例如 25/07/2047,而我需要的是 25/07/1947。我需要某种方法来强制大查询来选择我想要的世纪。我认识到文档指出 %y 可以与 %C 混合使用,尽管我不知道如何使用它。

我试过parse_date(“%d-%h-%C20%y”,DATE_OF_BIRTH),但这似乎不对

请注意,我目前无法获得日期的新格式。这就是我目前坚持的。但是,我确实有另一个称为 age 的字段,我可以用它来创建一个案例,何时尝试确保它选择正确的世纪

日期 解析 google-bigquery

评论


答:

0赞 Fran 8/31/2023 #1

找到了适合我的解决方案。发帖以防对其他人有帮助:

CASE WHEN PARSE_DATE("%d-%b-%y", DATE_OF_BIRTH) <= CURRENT_DATE()
THEN PARSE_DATE("%d-%b-%y", DATE_OF_BIRTH)
ELSE DATE_SUB(PARSE_DATE("%d-%b-%y", DATE_OF_BIRTH), INTERVAL 100 YEAR) END