sách gpt4 ăn đã đi

node.js - 检查 PostgreSQL v9.5+ 中的 jsonb 对象内部是否存在键

In lại 作者:搜寻专家 更新时间:2023-10-31 23:30:36 24 4
mua khóa gpt4 giày nike

我有一个简单的查询来检查 jsonb 对象中是否存在 key

SELECT data->$1 jdata FROM "my-scheme"."my-table"

我在这个查询中遇到了 2 个问题:

1) 如果我将 'đồ ngốc' 作为 1 đô la 传递,它会正常工作,但会因 "'foo'""而失败'foo'->'bar'”。所以我不知道如何达到深键。我使用 node-postgres

2) 我只想检查 key 是否存在,而不是通过该 key 获取所有数据。

所以问题是:如何在不通过该键获取所有数据的情况下检查键是否存在于 jsonb 对象深处?

câu trả lời hay nhất

Bạn có thể sử dụng #> 运算符提取特定路径(指定为键数组)的元素。

您还可以通过 ? 运算符检查顶层是否存在 key ,尽管似乎没有接受路径的任何变体。

所以这些中的任何一个都可以做到:

SELECT '{"a":{"b":{"c":1}}}'::jsonb #> '{a,b}' ? 'c'
SELECT '{"a":{"b":{"c":1}}}'::jsonb #> '{a,b,c}' IS NOT NULL

第二个可能更有效一些,因为它避免了在将运算符链接在一起时构造中间 jsonb giá trị.

关于node.js - 检查 PostgreSQL v9.5+ 中的 jsonb 对象内部是否存在键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35749767/

24 4 0
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress