HQL 쿼리에서 날짜/시간 계산을 수행하는 방법을 모색 중입니다. 특히, current_timestamp()
함수의 결과에서 (x) 시간을 더하거나 빼는 방법은 무엇입니까? 또는이 작업을 수행하기 위해 SQL에 들어가야하며, 실행중인 데이터베이스가 무엇이든 지원하기를 바랍니다.HQL에서 날짜/시간 수학 수행하기
HQL 질의 예 : 시간보다 더 아무것도 바람직하지 않을 것이지만, 특정 단위로 timeToSubtract 매개 변수, 그리고 초 가장 바람직 할 것이다 :
FROM RandomThing
WHERE randomTime IS NOT NULL AND
randomTime >= current_timestamp() AND
randomTime <= (current_timestamp() + :timeToAdd)
난을 정의 할 수 있습니다.
CLARIFICATION :이 작업은 쿼리 외부에서 쉽게 수행 할 수 있습니다. 그러나 철학적 인 이유 때문에 쿼리하는 시스템의 시간보다는 데이터베이스 서버의 시간을 사용하는 것이 중요하다고 가정 해 봅시다. 실제 예 : 마지막 (x) 시간 내에 작성된 모든 항목에 대한 자동 시간 소인을 조회합니다. 타임 스탬프는 데이터베이스 시스템에 의해 만들어 지므로 데이터베이스의 현재 시간도 사용하는 것이 중요합니다.
timeToAdd가 매개 변수가 아니라 같은 행의 열을 제외하고 같은 행과 테이블에 두 번째 쿼리를 작성하는 것을 의미하지 않는다는 점을 제외하고는 동일한 것을 찾고 있습니다. – James