【问题标题】:Select all records from MySql database based on month根据月份从MySql数据库中选择所有记录
【发布时间】:2016-12-22 13:28:49
【问题描述】:

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

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

我想将此 MySql Query 转换为休眠条件,例如

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

但它给出了错误。

birth_date 的 DB DataType 是 Timestamp。

提前致谢。

【问题讨论】:

  • this 不适合你吗?
  • 查询正在运行,但我希望它采用 Hibernate Criteria 格式。
  • 这就是该问题的答案。自定义标准类
  • 我想使用 Criteria.add(Restrictions.eq( some_input ) 格式,如何使用它。

标签: mysql hibernate sqldatetime


【解决方案1】:

您必须编写自己的表达式。然后将该表达式与条件一起使用。您可以查看有关如何创建表达式的链接。 How to query on a month for a date with Hibernate criteria

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-03-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多