【发布时间】:2021-11-23 02:10:17
【问题描述】:
我在数据库中有 JSONB,我需要获取数组中的键和值,键可以更改。
示例 JSONB -
{"key": "test2", "key1": "value", "key2": "value1", "key3": "value2", "key4": "value5", "name": "test"}
我试过了
'@Query(value = "SELECT d.key, d.value " +
" FROM Table table" +
" JOIN jsonb_each_text(table.data) d ON true " +
" WHERE table.type = ?1 AND table.time BETWEEN ?2 AND ?3"+
" AND d.key IN ?4" , nativeQuery = true)
List<Object>findByData(String type, Long from, Long to, String[] keys);'
得到了,
[
[
"key",
"test2"
],
[
"key1",
"value"
],
[
"name",
"test"
]]
但我需要
[{
"key":"test2",
"key1:"value",
"name":"test"
}]
如果您有任何想法,请提供帮助。也许有办法改变请求?
【问题讨论】:
标签: java spring-data-jpa jsonb postgresql-9.5