1
我想解析下面的json数据并在where
子句下使用它。Postgres:解析sql中的JSON数据
Basic":{
"General":{
"Field1":1234,
"Field2":"6.86"
},
"Stream 0":{
"Type":"LDAP",
"Field4":"LALA1"
},
"Stream 1":{
"Type":"KERBEROS",
"Field4":"LALA2"
},
"Stream 2":{
"Type":"SAML",
"Field4":"LALA3"
},
我可以达到Type
这样的标签。
table.column_json::json->'Basic'->'Stream 0'->'Type'
的Stream #
的顺序是不确定的,而且有可能超过3个Stream
标签。
我怎样才能遍历每个流,并找到如果Type:
是"SAML"
然后Field4
值是"LALA3"
。
'json_each()'为我工作,但'='给'运算符不存在'错误。我尝试使用'j.v - >'Type':: varchar ='SAML',但没有运气。 –
啊,是的。它应该是' - >>'操作符将字段作为'text'。查看更新的答案。 – Patrick