PostgreSQL中如何从IST时区时间转换获取UTC日期时间
在PostgreSQL中将IST时间转换为UTC时间
对于你提供的带时区偏移的IST时间'2023-01-06T16:35:21.628+11:00',PostgreSQL有几种简单的转换方法,适合新手操作:
方法一:使用AT TIME ZONE关键字
这是最直接的方式,PostgreSQL会自动识别时间字符串中的时区偏移:
SELECT '2023-01-06T16:35:21.628+11:00'::timestamptz AT TIME ZONE 'UTC';
::timestamptz:将输入的字符串转换为带时区的时间戳类型AT TIME ZONE 'UTC':将带时区的时间转换为UTC时区的本地时间
方法二:使用CONVERT_TIMEZONE函数(PostgreSQL 12及以上版本)
如果你的PostgreSQL版本支持,也可以用这个函数明确指定源和目标时区:
SELECT CONVERT_TIMEZONE('+11:00', 'UTC', '2023-01-06T16:35:21.628'::timestamp);
- 第一个参数
'+11:00':源时区的偏移量 - 第二个参数
'UTC':目标时区 - 第三个参数:转换为不带时区的时间戳的原始时间字符串
查询结果
执行上述任意语句,得到的UTC时间为:2023-01-06 05:35:21.628
内容的提问来源于stack exchange,提问作者Sudam Jadhav
相关产品推荐
相关产品推荐

