[英]Filtering the JSON data stored in Postgres based on key-value pairs
我在我的Postgres数据库中的列名cart下有一个 JSON 对象存储为JSONB 。 这是 2 个用户的购物车数据
"items": [
{
"name": "T-shirt",
"price": 250,
"item_id": 111,
"quantity": 1
},
{
"name": "Trousers",
"price": 600,
"item_id": 222,
"quantity": 1
}
]
}
&&&&
{
"items": [
{
"name": "Jeans",
"price": 250,
"item_id": 333,
"quantity": 1
},
{
"name": "Trousers",
"price": 600,
"item_id": 444,
"quantity": 1
}
]
}
此数据存储在列名cart下。 我尝试使用 Gin 索引,但不清楚我在做什么。 我应该如何查询数据,以便我可以在Postgres的购物车中找到所有将裤子作为商品的用户列表? 另外,我是这个实现的新手,并且热衷于学习所以如果实现是通过Golang完成的,那将会很有帮助。
谢谢,普什卡·辛格
USING gin ((cart->'items') jsonb_path_ops);
SELECT * FROM order2 WHERE cart->'items' @> '[{"name":"Trousers"}]';
参考:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.