【发布时间】:2021-04-14 09:14:18
【问题描述】:
我有一个表,其中包含一个文本类型的列,其中包含一个 json 字符串。我想做一个查询,在其中选择一堆行(大约 50 行),并为这些行更新保存在文本字段中的 json 中的单个值。所以可以说它目前看起来像这样
{"amount":"45","level":1}
我想更新每一行的金额值,例如“级别”* 5。
我想不出用一个查询来做到这一点的方法,因为似乎不可能改变这样的文本类型字段的单个值。还是我错过了什么?否则我将不得不为我需要更改的每一行手动更改它,这会很痛苦。
【问题讨论】:
-
先看看能不能像这样把文本转换成jsonb:
select mycol::jsonb from mytable
标签: sql json postgresql