[英]How to filter a JSON array containing any of multiple elements
这是示例表:
create table leadtime.test (
id serial primary key,
name jsonb
)
数据测试:
insert into leadtime.test (name)
values ('["abc", "def", "ghi"]');
我想检查 name 是否包含此数组 '["abc", "132", "456"]' 中的任何值
我必须执行此代码:
select * from leadtime.test
where (name ? 'abc') or (name ? '132') or (name ? '456');
有人告诉我,多个OR
'ed 过滤器或不是最佳性能。
有没有更好的办法?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.