我有如下类型的数据,如在我的行中
{'new_value_formatted': 'Committed/Test Transaction', 'old_value_formatted': 'Completed'}我希望将new_value_formatted & old_value_formatted作为单独的列和数据以列形式存储
尝试regex‘((A/ )\w+)’。还是无法隔离。
select a.id,a.title,additional_data,
substring(b.additional_data ->> "old_value_formatted" FROM '[0-9a-zA-Z]+') as "Old Value",
substring(b.additional_data ->> "new_value_formatted" FROM '[0-9a-zA-Z]+') as "New from table a,b....Old Value | New_Value
__________|____________
xxxxx . | xxxxx发布于 2019-08-22 14:32:18
这里显示的格式是无效的json。使用双引号。如果在postgresql 9.2+上,我会执行replace(data,'\'','"')::json来获得有效的json,处理引用问题。然后您可以选择new_data ->> 'new_value_formatted'
我使用new_data作为有效json版本的占位符。
如果你需要这个做更老的版本,请回来找我。
这还没有经过测试,因为我手头没有机器。
https://stackoverflow.com/questions/57611256
复制相似问题