還有什么比這更慣用的
List<JSON> jsons = context.fetch("select row_to_json(p) j from persons p")
.stream()
.map(r -> r.get("j", JSON.class))
.toList();
row_to_json()與 jOOQ一起使用?
我嘗試使用function("row_to_json", ...)但不知道如何填充剩余的引數。
uj5u.com熱心網友回復:
這種語法(例如 Oracle has )可能會在不久的將來通過#10685JSON_OBJECT(*)開箱即用地支持。
該DSL.function()方法需要一個Field<?>...串列,因此目前它不能接受一個表。但是您也可以將純 SQL 模板用于您的函式使用,而不必將整個查詢設為模板,例如:
static Field<JSON> rowToJson(Table<?> t) {
return DSL.field("row_to_json({0})", SQLDataType.JSON, t);
}
現在像這樣使用它:
context.select(rowToJson(PERSONS)).from(PERSONS).fetch();
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/492792.html
標籤:PostgreSQL 乔克
