根据月份从MySql数据库中选择所有记录

时间:2016-12-22 13:28:49

标签: mysql hibernate sqldatetime

我想从Hibernate Criteria API获取MySQL日期字段中的所有记录。基本上我希望查询选择从日期到预定月份(例如1月)的所有行。这是我成功执行的MySql查询

select * from user u where month(u.birth_date) = 1; //1 for January

我想将此MySql查询转换为hibernate Criteria,例如

criteria.add(Restrictions.eq("month(birth_date)", month));

但这是错误的。

birth_date的DB DataType是时间戳。

提前致谢。

1 个答案:

答案 0 :(得分:1)

你必须写自己的表达方式。然后使用带有条件的表达式。您可以看到有关如何创建表达式的链接。 How to query on a month for a date with Hibernate criteria