【发布时间】:2021-07-10 06:27:45
【问题描述】:
我对此感到困惑,所以也许有人可以帮助我。我有一个包含两列 id 和 json_data 的表“答案”。在 json_data 列的每一行中,我保存了如下所示的对象数据:
第一个 json_data 行:
{
"question161839": {"answer": "test1 answer", "review_answ": "true"},
"question161840": {"answer": "test2 answer", "review_answ": "false"},
"question161841": {"answer": "test3 answer", "review_answ": "true"},
}
下一个 json_data 行:
{
"question161850": {"answer": "test4 answer", "review_answ": "true"},
"question161851": {"answer": "test5 answer", "review_answ": "true"},
"question161852": {"answer": "test6 answer", "review_answ": "false"},
"question161853": {"answer": "test7 answer", "review_answ": "false"}
}
我正在寻找 Postgres 查询,它允许我选择“review_answ”为假的问题。 比如:
select * from answers where json_data->review_answ = false
我期待的结果是:
question161840, question161852, question161853
我发现了一个类似的问题here,但我不明白如何在我的情况下使用它。
【问题讨论】:
-
您想要多行还是单行的结果?您使用的是哪个 Postgres 版本?
-
如果可能的话,我会更喜欢多行并且我使用的是 Postgres 11.8
标签: sql arrays json postgresql