gpt4 book ai didi

json - postgresql 查询 json 的值(而不是键)?

转载 作者:行者123 更新时间:2023-11-29 13:27:39 26 4
gpt4 key购买 nike

想象一下这个简单的 postgresql 表('json_table'):

id | data(json)
1 | {"a": 1}
2 | {"a": 1, "b": 2}
3 | {"a": 2}

我知道可以查询具有键“a”的所有记录:SELECT * FROM json_table WHERE data ? 'a';

但我想查询所有包含 json 值“2”的记录。所以结果应该是这样的:

2  | {"a": 1, "b": 2}
3 | {"a": 2}

这是否可以通过上面提到的“简单”查询来实现?

最佳答案

我认为没有可以在如此简单的查询中使用的运算符。您可以使用下面的查询来实现此目的,但我不知道这是否是最简单的方法:

select distinct on (id) id, data from (
select id, data, (json_each(data)).value::text
from json_table
) alias
where value = '2'

关于json - postgresql 查询 json 的值(而不是键)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30896577/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com