pgsql 新手,如有打扰,请见谅。
请问诸位大佬,如果我数据库有一张 firends,其中一个字段是 jsonb,字段名为"detail",具体如下:
{"Tom": {"friendly": {"message": "Hi", "lovely":3 }}
如何能够通过 JPA 来写 qurey,查找 lovely 等于 3 的所有的 firends 信息呢?
即 TOM 和 friendly 是变化的,但 lovely 的层级在 jsonb 始终不变的。
@Query(value = ?????)
望不吝指教!
1
reus 2019-01-29 16:58:14 +08:00 1
如果需要查询,就好好设计关系表,不是说查不出来,但很麻烦,又要特别加索引,业务一变你索引又要跟着改
select * from ( select * from jsonb_each(( select value from jsonb_each(( select value from jsonb_each( '{"a": {"b": {"c": "c"}}}'::jsonb ) )) )) ) t0 where value = '"c"'; 这样可以把内层的拿出来 |