2016-09-20 61 views
2

任何人都可以帮我用jsonb字段的表加入查询吗?加入对jsonb字段的查询

如果我有两个表,每个都有一个jsonb列value,我需要运行一些连接查询。

比方说,在每个表value领域具有与此类似

accounts

[{ 
     "account-id":"c3ff14f9-b9ce-4daf-930b-3500e0efbdc9", 
     "name": "foo" 
    }...] 

account-balances

[{ 
    "account-id": "c3ff14f9-b9ce-4daf-930b-3500e0efbdc9", 
    "amount": 31415926 
}...] 

你可以看到表中的数据,通过相关的“帐户ID行“财产。 现在我需要找到具有相应的平衡所有账户> 0

回答

2

类似下面应该这样做:

SELECT * 
FROM accounts JOIN "account-balances" 
       ON accounts.value->'account-id'="account-balances".value->'account-id' 
WHERE ("account-balances".value->>'amount')::integer>0;