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

Databricks中列名含$符号致SQL命令报错的解决方法咨询

解决SQL中含$符号的字段名报错问题

在SQL里,当字段名包含$这类特殊字符时,数据库引擎会把它误判成语法元素(比如变量占位符),直接执行就会报错。解决办法是用对应数据库支持的标识符包裹符,把带特殊字符的字段名标记为合法的标识符:

  • MySQL、Hive、Spark SQL等:用反引号(`)包裹字段名
    修改后的SQL代码:

    select from_unixtime(date.`$date`/1000) as date from blabla
    
  • PostgreSQL、SQL Server(标准模式):用双引号(")包裹字段名
    修改后的SQL代码:

    select from_unixtime(date."$date"/1000) as date from blabla
    
  • SQL Server(兼容模式):也可以用方括号([])包裹字段名
    修改后的SQL代码:

    select from_unixtime(date.[$date]/1000) as date from blabla
    

核心逻辑就是通过包裹符明确告诉数据库引擎:$date是一个字段名称,不是其他语法符号。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.27 18:12:02