如何在Postgres中使用条件WHERE json层次结构列?

时间:2019-05-26 16:13:34

标签: json postgresql

我在Postgres中创建了一个小型DW,其中包含XML列,JSON列和GEOmetry列,我只想在json列中使用子句分组。

此表的重点是XML列,JSON列和GEOmetry列

enter image description here

我在表格中插入了一行。

这是postgres中的表格视图:

enter image description here

我想显示城市是丹吉尔的线

注意:我使用了以下查询,但是没有用:

enter image description here

2 个答案:

答案 0 :(得分:0)

根据文档,JSON运算符为:

-运算符->按键返回JSON对象字段。

-运算符->>按文本返回JSON对象字段。

然后您对运算符有误,必须使用->作为addres键,例如这样的示例

https://dbfiddle.uk/?rdbms=postgres_10&fiddle=67df669c90741366f89671ea9494b287

答案 1 :(得分:0)

columnName->>'field'

访问该字段并以字符串形式返回值;而:

columnName->'field'

访问该字段并以JSONB形式返回值,这使您可以继续遍历该对象到较低级别。

所以->给你JSONB->>给你字符串