0
我正在使用PostgreSQL 9.5和JSONB数据类型来存储文档。我的表是这样的:如何使用Postgres jsonb在数组内搜索对象值?
create table records (
id serial,
data jsonb
);
我的文档包含对象的数组,例如:
{
"some_field": "a value",
"another_field": 123,
entries: [
{
"name": "John Doe",
"age": 42
},
{
"name": "Johnny McMuffin",
"age": 117
}
]
}
的问题是,我希望能够在entries
上name
属性过滤器数组,我只是无法弄清楚。我希望能够在我的表中找到部分与对象列表中的某个名称匹配的行。
我读了很多关于索引和表达式的东西,但我似乎无法让它工作。这不可能吗?
这似乎工作。我想我可以用某种方式处理可能的重复。 – fiskeben
这些不重复。这些是你数组中的多个值。但是您可以使用'exists'查询来从基表中获取唯一的唯一行。 –