数据库中的日期格式是date类型的。 一般查询日期的时候都是直接和数据库中的日期比较的criteria.add(Restrictions.ge("u.date", fromDate));但是现在我想查询员工生日的时候,怎么比较,因为生日是不考虑年份的和小时的。只考虑是几月几号就可以的。不知道QBC怎么写?

解决方案 »

  1.   

    criteria.add(Restrictions.between("u.date", 今天的日期,明天的日期));
      

  2.   

    criteria.add(Restrictions.sqlRestriction(" datediff(month,date,getdate())==0 and datediff(day,date,getdate())==0"));
      

  3.   

    criteria.add(Restrictions.ge("u.date", fromDate));
    这段代码是大于等于你给的时间,between 比较慢,qbc eq 一个日期不可以, 建议添加sqlcriteria.add(Restrictions.sqlRestriction("u.date=to_date(fromDate,'yyyy-MM-dd')"));这是等于这个时间目前这样最好