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

如何在Couchbase查询中将ISO日期格式转为"DD/MM/YYYY"字符串格式?

问题:将ISO 8601格式日期转换为DD/MM/YYYY格式

我的文档中有一个日期属性,格式如下:

2016-09-23T18:48:11.000+00:00

需要将其转换为"DD/MM/YYYY"格式,期望结果为:

"23/09/2016"

我尝试了以下查询语句:

SELECT  date_format_str("2016-09-23T18:48:11.000+00:00", '11-11-1111' ) ;

得到的结果为:

[
    {
        "$1": "2016-09-23T18:48:11Z"
    }
]

请问有可行的转换方法吗?


解决方法

你错误地使用了date_format_str函数的格式参数,需要使用对应日期分量的占位符而非数字占位。针对你使用的函数,正确的写法是:

SELECT date_format_str("2016-09-23T18:48:11.000+00:00", 'DD/MM/YYYY');

执行该语句后就能得到你期望的"23/09/2016"结果。

如果是其他数据库环境,对应的转换语句如下:

  • MySQL:先将字符串转为日期类型,再格式化
    SELECT DATE_FORMAT(STR_TO_DATE("2016-09-23T18:48:11.000+00:00", '%Y-%m-%dT%H:%i:%s.%f%z'), '%d/%m/%Y');
    
  • PostgreSQL:通过TO_TIMESTAMP解析日期字符串,再用TO_CHAR格式化
    SELECT TO_CHAR(TO_TIMESTAMP("2016-09-23T18:48:11.000+00:00", 'YYYY-MM-DD"T"HH24:MI:SS.FF3TZ'), 'DD/MM/YYYY');
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.19 02:12:14