我正在寻找实现以下部分的某种方式:
...
where JSON_SEARCH(content, 'one', 'XXX', NULL, "$.lib.books[*].id") is not null;
使用JOOQ。目前我有:
...
.where(EVENT.SENDERID.eq(userId)
.and(DSL.condition("JSON_SEARCH({0}, 'one', {1}', NULL, \"\$.lib.books[*].id\")", BOOK.CONTENT, DSL.`val`(bookId, BOOK.CONTENT))))
但无法弄清楚is not null
itself
JSON_SEARCH
条件的应用
答案 0 :(得分:1)
您正在使用DSL.condition(String)
生成条件/谓词,而不是列引用。您想要的是DSL.field(String)
:
.where(EVENT.SENDERID.eq(userId)
.and(DSL.field("JSON_SEARCH({0}, 'one', {1}', NULL, \"\$.lib.books[*].id\")",
BOOK.CONTENT,
DSL.`val`(bookId, BOOK.CONTENT)).isNotNull() ))