簡體   English   中英

JOOQ MySQL按位

[英]JOOQ mysql bitwise

我們只是切換到使用JOOQ代替標准DAO和直接SQL,而我正在嘗試將此SQL轉換為JOOQ上下文:

產品在MySQL 5.6中定義為INT(4)字段。

SELECT DISTINCT f1
FROM table_A WHERE 
    (f1 IS NOT NULL)
    AND (products & 255)
    AND (age <= 180) 
    AND (flag < 1)
ORDER BY f1; 

JOOQ版本:

context.selectDistinct(TABLE_A.F1).from(TABLE_A).where(TABLE_A.F1.isNotNull())
    .and(TABLE_A.flag.lessthan(UInteger.valueof(1))
    .and(TABLE_A.age.lessthan(UInteger.valueof(180))
.orderBy(TABLE_A.f1);

我似乎無法弄清楚如何進行(乘積和255)按位運算。

您可以在jOOQ手冊相關章節中找到有關按位運算符/按位函數的一些信息。

具體來說,使用DSL.bitAnd()

DSL.bitAnd(TABLE_A.PRODUCTS, 255);

另請參見jOOQ用戶組上的相關討論。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM