2014-09-02 1 views
0

Я пытаюсь сравнить время с столбцом DateTime, используя JPQL. Например, Таблица 1 содержит meetingDate - тип столбца Дата и meetingTime - тип столбца Дата.Сравнение времени с столбцом DateTime с использованием JPQL?

я получил требуемую мощность с нативным запроса, запрос

select * from table1 where appointment_date>curdate()-1 and TIME(appointment_time) between '09:00:00' and '12:00:00'; 

Как конвертировать этот запрос в JPQL или CriteriaBuilder. Спасибо.

ответ

0

Там нет функции TIME в JPQL (как любая ссылка JPQL бы вам сказать). Вы должны найти функцию, относящуюся к РСУБД и использовать JPA 2,1

"FUNCTION('sqlTimeFunction', args) BETWEEN :val1 AND :val2" 
0

Вы можете использовать следующие родной запрос, он работает для меня:

select * from table1 where hour(appointment_time) >= 9 and hour(appointment_time) <= 12 
+0

Пожалуйста, используйте английский язык в несокращенных образом на SO , Также выделите свой код, оставив пустую строку и отступы на 4 пробела. И добро пожаловать в SO. – webuster