Kotlin JSON访问
适用于 ✅ 开源版 ✅ 专业版 ✅ 企业版
可以使用 JSON_GET_ELEMENT 函数 或 JSON_GET_ATTRIBUTE 函数 来访问 JSON 数组元素或对象属性,它们会转换为 JSON 下标语法或类似语法
SELECT JSON_ARRAY(1, 2)->1 JSON_OBJECT(KEY 'a' VALUE 1)->'a'
create.select( jsonGetElement(jsonArray(value(1), value(2)), 1) jsonGetAttribute(jsonObject("a", value(1)), "a")).fetch();
使用 kotlin 扩展模块,这些运算符也可以直接在 Field<JSON;>
和 Field<JSONB>
上使用
package org.jooq.kotlin operator fun Field<JSON?>.get(index: Int) = jsonGetElement(this, index) operator fun Field<JSON?>.get(index: Field<Int?>) = jsonGetElement(this, index) operator fun Field<JSON?>.get(name: String) = jsonGetAttribute(this, name) operator fun Field<JSON?>.get(name: Field<String?>) = jsonGetAttribute(this, name) // [... and more]
这允许使用下面更简洁的版本
create.select( jsonArray(value(1), value(2))[1], jsonObject("a", value(1))["a"]).fetch();
反馈
您对此页面有任何反馈吗? 我们很乐意听取您的意见!