JOOQ查詢
回答
爲了得到一個jOOQ Condition
爲您和對比,簡單地寫:現在
Condition condition = sum(apples.quantity).gt(sum(bananas.quantity));
,Condition
類型目前還無法投入在jOOQ的SELECT
條款,但可以使用DSL.field(Condition)
他們包裝:
Field<Boolean> field = field(sum(apples.quantity).gt(sum(bananas.quantity)));
jOOQ將負責確定您的SQL方言是否允許將謂詞用作列表達式(例如, MySQL,PostgreSQL,SQLite),還是需要使用等效的CASE
表達式(例如DB2,HANA,Oracle,SQL Server)來模擬。
導致:
Record1<Boolean> result =
DSL.using(configuration)
.select(field(sum(apples.quantity).gt(sum(bananas.quantity))))
.from(...)
.fetchOne();
jOOQ就像甜甜圈,有什麼它不能做?現在可能的改進是在Condition上使用asField()方法,這樣在使用IDE.e.g時會更易於發現。 sum(apples.quantity).gt(sum(bananas.quantity))。asField() – Aner
@Aner:的確,有這樣一個方法會與其他API一致(例如'FieldLike.asField()'),但事實上,'asField()'(和'asTable()')方法有一個很大的缺點:它們不能被通用化,就像這裏顯示的'field()'方法。 –
- 1. JOOQ - 選擇查詢
- 2. 動態創建JOOQ查詢
- 3. 在Jooq中緩存查詢
- 4. 用戶定義函數的查詢JOOQ
- 5. 從jOOQ中的例程查詢
- 6. Jooq創建jasper報告查詢
- 7. 與子查詢刪除使用jooq
- 8. 擴大jooq的行值查詢
- 9. Jooq無法記錄SQL查詢
- 10. 從jooq查詢中創建PreparedStatement
- 11. 使用Jooq插入查詢有可能嗎?
- 12. jOOQ插入查詢返回生成的密鑰
- 13. jOOQ - 如何引用查詢中的字段值
- 14. jOOQ表模板,查詢的動態表名
- 15. 如何使用jOOQ創建SELECT EXISTS(子查詢)?
- 16. 如何使用Jooq查詢列不區分大小寫?
- 17. 從JOOQ
- 18. jOOQ 3.1打印日誌,但jOOQ 3.4不
- 19. jOOQ - CTE和INSERT
- 20. JOOQ與SQL Server
- 21. JOOQ串聯
- 22. 混淆和jOOQ
- 23. JOOQ空條件
- 24. 與Jooq記錄
- 25. jOOQ PostgreSQL裏
- 26. Spring roo和jOOQ
- 27. JOOQ fetchLazy到POJO
- 28. 我可以建立一個jooq查詢到一個偏移量嗎?
- 29. 百里香視圖找不到jOOQ的屬性/領域加入查詢
- 30. 如何在jOOQ中使用單個order by子句寫聯合查詢?
的可能的複製[如何執行IF ... THEN在SQL SELECT?](http://stackoverflow.com/questions/63447/how-to-執行一個如果然後在一個SQL選擇) – APC