querydsl에 SQLExpression.datediff()에 의해 반환 NumberExpression 사용 방법 테이블에 자기-가입과 같이 SQLExpression.datediff를 사용하여 :내가 뭐하는 거지
:
QSomeTable tb1 = new QSomeTable("tb1");
QSomeTable tb2 = new QSomeTable("tb2");
NumberExpression<Integer> ne = SQLExpression.datediff(DatePart.hour, tb1.time, tb2.time);
query.from(tb1, tb2).where........list(ne);
이 다음과 같은 예외를 제공합니다 org.springframework.dao.InvalidDataAccessApiUsageException : 노드에 대한 데이터 유형이 없습니다 : org.hibernate.hql.internal.ast.tree.MethodNode
목록 절에서 다른 필드를 선택하려고 시도했지만 문제없이 작동합니다.
도움에 감사드립니다.
나는 쿼리 작성을 계산하기 위해 QueryDSL SQL을 사용자에게 보내려고한다. 3.3.2 버전을 사용해 보았지만이 버전에서는 SQLQUeryImpl 클래스가 누락되었습니다. 그런 다음 이전 2.9.0 버전을 사용해 보았습니다. 이 하나는 SQLQueryImpl 있지만 SQLExpressions 클래스에서 datediff 메서드가 없습니다. 당신은 올바른 querydsl SQL 버전을 가르쳐 주시겠습니까? – AVM
SQLQueryImpl이 SQLQuery로 변경되었습니다. –