日期:2014-05-19  浏览次数:20888 次

hibernate 中使用to_char问题 hql问题求高手帮忙
我有个需求 是数据中一个升级字段是date类型的, 数据存储的比较全(年月日时分秒) ,我现在想只匹配年月日就可以了应该怎么做啊?????

在数据库客户端写sql 用to_char 可以

但是hibernate 中的hql语句应该怎么写呢?为什么报错呢?

求高手帮帮忙
还有其他方式吗?
附上代码:
public List<Member> findUpDatemember(String UPDate) {
Session session = null;
session = getSession();
String hql = "from Member d where to_char(d.'update','yyyy-mm-dd')="+UPDate; 
Query query = session.createQuery(hql);
List<Member> list = query.list();
session.close();
return list;
}
这样报错

------解决方案--------------------
String hql = "from Member d where to_char(d.'update','yyyy-mm-dd')="+UPDate;

d.'update'为什么要打引号 直接d.update
还有你有把这段改下放一下放到sql那边运行一下没
------解决方案--------------------
to_char改成to_date
------解决方案--------------------
yyyy-MM-dd mm应该大写。
------解决方案--------------------
你的这个to_char是在数据库那边跑的,不存在hql的问题。
oracle用tranc(d.'update')