1
우리는 단지 표준 DAO 똑바로 SQL 대신에 JOOQ를 사용하여 전환하고 내가 JOOQ 문맥이 SQL로 변환하려고 해요
제품은 MySQL의에서 INT (4) 필드로 정의된다 5.6.
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) 비트 연산을 수행하는 방법이다.
왜 DSL 패키지 안에 JOOQ의 일부 기능이 숨겨져 있습니까? – awm
무슨 말씀 이시죠? 'DSL'은 클래스이고 자바 클래스에서 정적 임포트 할 수있는 모든 종류의 함수를 포함합니다. 다른 말로 표현하자면, 그들은 전혀 "숨겨져 있지 않다"고, 꽤 노출되어 있습니다 :-) http://www.jooq.org/doc/3.2/manual/sql-building/dsl을 참고하십시오. 비트 연산이 "중위 표기법"에서도 지원된다면 유용 할 수 있다고 생각합니다. 이 내용이 jOOQ 3.3에 추가 될 것입니다 : https://github.com/jOOQ/jOOQ/issues/2848 –