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

Druid技术咨询:如何在TIME_FORMAT函数中转义字符

Druid TIME_FORMAT中转义T的正确方法

在Druid的SQL中,TIME_FORMAT函数遵循SimpleDateFormat的格式化规则,要将T作为字面量保留,需要用单引号包裹T,同时因为SQL字符串本身用单引号界定,所以内部的单引号要转义为两个连续单引号。

修改后的SQL语句如下:

SELECT
  TIME_FORMAT(__time, 'YYYY/MM/dd''T''hh') AS "hour",
  SUM(cost)
FROM my_table
WHERE __time >= CURRENT_TIMESTAMP - INTERVAL '3' DAY
GROUP BY TIME_FORMAT(__time, 'YYYY/MM/dd''T''hh')

原理:

  • SimpleDateFormat中,被单引号包裹的内容会被当作纯文本处理,不会被解析为格式占位符
  • 在SQL字符串里,要表示一个单引号,必须用两个连续单引号进行转义,这样Druid才能正确识别字面量T

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.20 22:24:28