Hibernate 如何编写条件查询以获取年龄超过50岁的人员列表

Hibernate 如何编写条件查询以获取年龄超过50岁的人员列表,hibernate,Hibernate,在人表dateofbirth列中有,我想拿的名单年龄是50岁以上。 我已经编写了sql查询 但我需要编写查询条件 mysqlquery是 select dateofbirth,datediff(now(),dateofbirth)/325 as age FROM test_hibernate1.person where datediff(now(),dateofbirth)/325>50; 您可以使用jodaTime轻松地将currentDate更改为currentDate-5

在人表dateofbirth列中有,我想拿的名单年龄是50岁以上。 我已经编写了sql查询 但我需要编写查询条件

mysqlquery是

 select dateofbirth,datediff(now(),dateofbirth)/325 as age FROM     test_hibernate1.person where datediff(now(),dateofbirth)/325>50;

您可以使用jodaTime轻松地将currentDate更改为currentDate-50年

DateTime currentDate = new DateTime();
Date dateMinusFiftyYears = currentDate.minusYears(50).toDate();
criteria.add(Restrictions.le("dateOfBirth", dateMinusFiftyYears));
试试这样的