Postgresql 选择postgres中提供列表中JSONB字段所在的行
假设我在Postgres中有一个表,其列Postgresql 选择postgres中提供列表中JSONB字段所在的行,postgresql,jsonb,Postgresql,Jsonb,假设我在Postgres中有一个表,其列data类型为JSONB。此列包含相当复杂的对象,例如: { ..., gender: ['men', 'women'], ... } SELECT uuid, data ->> 'gender' FROM "OX_Articles" WHERE data ->> 'gender' INTERSECTS WITH (men', 'women', 'something_else'); 我有一个类似gender=men&
data
类型为JSONB
。此列包含相当复杂的对象,例如:
{
...,
gender: ['men', 'women'],
...
}
SELECT uuid, data ->> 'gender' FROM "OX_Articles" WHERE data ->> 'gender' INTERSECTS WITH (men', 'women', 'something_else');
我有一个类似gender=men&gender=women&gender=something\u other
的查询,希望在表中查找所有gender的members`in('men','women','something\u other')的行。例如:
{
...,
gender: ['men', 'women'],
...
}
SELECT uuid, data ->> 'gender' FROM "OX_Articles" WHERE data ->> 'gender' INTERSECTS WITH (men', 'women', 'something_else');
当然,我们没有关键字与
相交,或者应该工作
他们应该有类似的表现。我喜欢=any
,因为它处理空的RHS(而中的不能处理空的文本元组),而且我希望无论postgres绑定如何,我都必须将宿主语言的数组/列表/数组列表转换为pg数组,而不是pg元组。正确,我们没有这种语法。你应该看看这些文件,看看我们有什么。