我需要从表格中抓取一些记录,其中列birthDate
为Date
(没有时间)。我需要通过比较年份和月份来过滤记录。
例如,我想要在1990年3月出生的所有用户。这一天并不重要。
你是如何处理的?
答案 0 :(得分:7)
您可以使用from Entity where to_char(birthDate,'YYYY/MM') = '1990/03'
这适用于HQL
答案 1 :(得分:3)
你可以试试这个
select * from table where month(birthdate)=03 and year(birthdate)=1990
答案 2 :(得分:0)
这是对我有用的HQL查询
from Person as p where year(p.birthDate)=year(:bDate) and month(p.birthDate)=month(:bDate)"
bDate的类型是日期,您可以传递整数
from Person as p where year(p.birthDate)=:bYear and month(p.birthDate)=:bMonth