You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在BigQuery中通过SQL将日期转换为星期几?

在BigQuery中根据指定格式日期返回星期几

要实现将06/10/2023这类MM/DD/YYYY格式的日期字符串转换为对应的星期全称(如Monday),可以通过BigQuery的日期解析与格式化函数组合完成:

核心思路

  1. 先将字符串格式的日期转换为BigQuery原生的DATE类型
  2. 再将DATE类型格式化为英文星期全称

示例代码

如果是直接处理单个日期字符串:

SELECT FORMAT_DATE("%A", PARSE_DATE("%m/%d/%Y", "06/10/2023")) AS day_of_week;

执行后会返回:

day_of_week
-----------
Monday

如果是处理表中的日期字段(假设字段名为date_str):

SELECT
  date_str,
  FORMAT_DATE("%A", PARSE_DATE("%m/%d/%Y", date_str)) AS day_of_week
FROM your_table_name;

函数说明

  • PARSE_DATE("%m/%d/%Y", date_str):按照MM/DD/YYYY的格式将字符串解析为DATE类型,其中%m代表两位月份,%d代表两位日期,%Y代表四位年份。
  • FORMAT_DATE("%A", date_val):将DATE类型值格式化为英文星期全称,%A是对应的格式符(若需缩写星期名可改用%a,如Mon)。

容错处理

如果存在格式不合法的日期字符串,PARSE_DATE会返回NULL,甚至导致查询报错。可以使用SAFE.PARSE_DATE来避免报错,仅返回NULL:

SELECT
  date_str,
  FORMAT_DATE("%A", SAFE.PARSE_DATE("%m/%d/%Y", date_str)) AS day_of_week
FROM your_table_name;

内容的提问来源于stack exchange,提问作者Rick

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.16 05:12:02