我在 PostgreSQL 10 数据库product中有一个jsonb名为“元数据”的列的表。这是我第一次使用文档和 Postgres。jsonb值看起来像这样:
{
"name": "l33t 衬衫",
“价格”:“1200”,
"数量": "60",
“选项” :
{
“类型”:“收音机”,
"title": "颜色",
“选择”:[
{“价值”:“红色”,“价格”:“-100”,“数量”:“30”},
{“价值”:“蓝色”,“价格”:“+200”,“数量”:“10”},
{“价值”:“绿色”,“价格”:“+300”,“数量”:“20”}
]
}
}
两个问题:
1.如何选择“opts”数组中的特定元素?
select metadata->'options'->'opts'->(element here) from product
where metadata->'options'->'opts' @> '[{"value" : "blue"}]'
Run Code Online (Sandbox Code Playgroud)
2 、当售出一件或多件时,如何更新“数量”(减去当前的“数量”)?
对指南/注释的进一步链接表示赞赏。