繁体   English   中英

检查jsonb列中是否存在属性

[英]Check if a property exists in a jsonb column

我面临一个问题,即按jsonb列类型的属性过滤行。

我尝试了这个:

jsonb_column ? 'my_property'

pgadminpsql它运行良好,但是在JDBC驱动程序上,它将引发错误:

org.hibernate.QueryException: Expected positional parameter count: 3, actual parameters: []

问题出在? 操作员。 那么,还有另一种方法吗?

好吧,经过一些研究,没有人能解决我的“?”问题 通过JDBC驱动程序操作符,我用另一种方式解决了该功能

jsonb_object_keys

返回json元素的所有键,然后使用<@运算符过滤每个键,例如:

ARRAY(SELECT jsonb_object_keys(jsonb_column)) <@ '{property1,property2,property3}'

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM