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

谷歌大数据控制台使用DAYNAME()函数提示不存在报错如何处理

报错原因
  • 谷歌大数据控制台运行的是BigQuery SQL语法,和MySQL语法不通用,DAYNAME()是MySQL专属函数,BigQuery没有内置该函数,因此触发函数不存在的报错:

Function not found: DAYNAME at [8:1]

实现获取星期名称的方案

方案1:使用FORMAT_DATE()函数(推荐)

这是BigQuery官方提供的原生日期格式化函数,适配性最高:

  • 获取英文星期全称:
    SELECT FORMAT_DATE("%A", DATE("2024-01-01")) AS week_name;
    返回结果示例:Monday
  • 获取英文星期缩写:
    SELECT FORMAT_DATE("%a", DATE("2024-01-01")) AS week_name;
    返回结果示例:Mon
  • 获取中文星期名称,指定locale参数为zh-CN即可:
    SELECT FORMAT_DATE("%A", DATE("2024-01-01"), "zh-CN") AS week_name;
    返回结果示例:星期一

方案2:结合EXTRACT()+CASE WHEN自定义映射

如果需要自定义星期的返回内容,可以用该方案:

SELECT 
  CASE EXTRACT(DAYOFWEEK FROM 你的日期字段)
    WHEN 1 THEN '周日'
    WHEN 2 THEN '周一'
    WHEN 3 THEN '周二'
    WHEN 4 THEN '周三'
    WHEN 5 THEN '周四'
    WHEN 6 THEN '周五'
    WHEN 7 THEN '周六'
  END AS custom_week_name
FROM 你的表名

注意:BigQuery的DAYOFWEEK返回值规则为:1代表星期日,2代表星期一,以此类推,7代表星期六,映射时注意顺序不要写错。

内容的提问来源于stack exchange,提问作者Marwa Abd Elfattah

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 17:45:03