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

Looker中CASE语句指定特定日期的语法咨询

Looker CASE语句ELSE部分使用固定日期的正确语法

在Looker的SQL CASE语句中,要在ELSE部分指定固定日期2050-01-01,核心是要符合底层数据库的日期语法规范,以下是不同数据库场景的正确写法:

适用于MySQL、PostgreSQL等数据库

这类数据库支持直接使用标准日期字符串,修改后的代码如下:

sql:CASE
  WHEN ${Today} < ${XXX} THEN ${XXX}
  ELSE '2050-01-01'
END;;

或者更严谨地显式声明日期类型:

sql:CASE
  WHEN ${Today} < ${XXX} THEN ${XXX}
  ELSE DATE '2050-01-01'
END;;

适用于Oracle数据库

Oracle需要用TO_DATE函数将字符串转换为日期类型,指定格式匹配:

sql:CASE
  WHEN ${Today} < ${XXX} THEN ${XXX}
  ELSE TO_DATE('2050-01-01', 'YYYY-MM-DD')
END;;

关键注意点

  • 优先使用YYYY-MM-DD这种ISO标准日期格式,避免因数据库的日期解析设置差异导致错误
  • 不要直接用'01/01/2050'这类格式,部分数据库会将其识别为月/日/年,引发日期解析错误
  • ${TODAY}是Looker内置变量,替换为固定日期时无需使用Looker的变量运算语法,直接写符合数据库要求的日期表达式即可

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.04 20:20:49