sql - 在 postgresql JSON 中添加列

标签 sql json postgresql postgresql-9.4

我正在使用 postgresql 9.4

我在表中有一个 json 列,它包含以下值:

"{
  "title" : "risk",
  "name"  : "David"
}"

我必须执行两个功能

  1. 将 name 值更新“John”
  2. 插入 "city": "paris"

我的最终值应该在我的表列中

"{
  "title" : "risk",
  "name"  : "John",
  "city"  : "paris"
}"

基本上,我想更新和插入这个 json 列的查询,我不能将数据库更改为更高版本

最佳答案

类似于:

update table 
set jbcolumn = json_build_object('title',jbcolumn->>'title','name','John','city','Paris') where bcolumn->>'name' = 'David

在 postgres 9.4 中

https://www.postgresql.org/docs/9.4/static/functions-json.html

json_build_object(VARIADIC "any")

关于sql - 在 postgresql JSON 中添加列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47220726/

相关文章:

javascript - 将 JSON 分配给自动完成

使用默认值的 SQL 条件连接

python - SQLAlchemy 验证 SSL 连接

php - 从 pgadmin 和 doctrine ORM 调用存储过程时的不同结果

sql - oracle中的RANK()和DENSE_RANK()函数有什么区别?

javascript - 在 Javascript 中更新 JSON 文件

android - Android 上的缓慢 HttpPost 请求

mysql - 在一次查询中获取每个分类术语的最新 3 个节点

sql - 如何在bigquery中合并相同的表?

php - 具有 concats 和 Joins 的 SQL 在 MySQL 5.1 中工作正常,但在 5.5 上返回 NULL