如何将JSONB对象中现有的时间戳更改为Postgresql中的另一种时间戳格式

如何将JSONB对象中现有的时间戳更改为Postgresql中的另一种时间戳格式,postgresql,postgresql-9.5,Postgresql,Postgresql 9.5,表user\u record有一列info,该列返回以下数据,而info是一列jsonb 查询:从用户记录中选择信息结果: {"someId": "XXFUN0123XX", "age": 43, "updatedAt": "2017-02-18 00:00:00"} 现在的问题是关于json响应中的updatedAt字段 从id='XXFUN0123XX'的用户_记录中选择信息->>'upda

user\u record
有一列
info
,该列返回以下数据,而
info
是一列
jsonb

查询:
从用户记录中选择信息
结果:

{"someId": "XXFUN0123XX", "age": 43, "updatedAt": "2017-02-18 00:00:00"}
现在的问题是关于json响应中的
updatedAt
字段
从id='XXFUN0123XX'的用户_记录中选择信息->>'updatedAt'

结果:2017-02-18 00:00:00

我必须用这种格式更新
YYYY-MM-DDTHH:MI:SS+02:00
info
列的
updatedAt
字段的所有时间戳->

我已经尝试了多种方法并阅读了文档,但找不到合适的解决方案。以下是我试图执行的一个查询

UPDATE user_record SET info = info || jsonb_build_object('updatedAt', 
select to_timestamp(info ->> 'updatedAt','YYYY-MM-DDTHH:MM:SS+02:00') from user_record where id ='XXFUN0123XX')) where id = 'XXFUN0123XX';

在上面的查询中,我试图从内部查询的json对象中提取
updatedAt

使用
jsonb\u集
对jsonb进行更改。并使用
to_char
而不是
to_timestamp
如下所示:

update user_record
set info=jsonb_set(info,'{updatedAt}',to_jsonb(to_char((info ->> 'updatedAt')::timestamp,'YYYY-MM-DD"T"HH24:MI:SS+02:00')))


回答得很好。如果您可以添加一些关于查询的细节,说明它是如何工作的,那就太好了。