在 PostgreSQL 中连接 JSONB 访问器
Concatenate JSONB accessors in PostgreSQL
我有一个如下所示的查询:
select 1 from jsonb_array_elements(students::jsonb -> 'users') as e
where e @> '{"id": "1"}'
但是我想改变这个:
students::jsonb -> 'users'
不进行硬编码,而是采用一组节点(例如 [[class”、“users”])并将它们连接起来以创建此
students::jsonb -> 'class' -> 'users'
我需要这个查询是动态的,因为我不会总是在相同的节点中找到我正在寻找的数据。
如果我没看错你的问题,你正在寻找 #>
operator
students #> '{class,users}'
我有一个如下所示的查询:
select 1 from jsonb_array_elements(students::jsonb -> 'users') as e
where e @> '{"id": "1"}'
但是我想改变这个:
students::jsonb -> 'users'
不进行硬编码,而是采用一组节点(例如 [[class”、“users”])并将它们连接起来以创建此
students::jsonb -> 'class' -> 'users'
我需要这个查询是动态的,因为我不会总是在相同的节点中找到我正在寻找的数据。
如果我没看错你的问题,你正在寻找 #>
operator
students #> '{class,users}'