当前位置:编程学习 > JAVA >>

hql语句错误

String hql = "from MarkAssociation ma where (SELECT DISTINCT SUBSTRING('"+className+"', 0, 3))<=(SELECT DISTINCT SUBSTRING(ma.examTime, 3, 5))";
报语句错误...
但是这个我在数据库里是正确的:
SELECT * from Mark_Association where (SELECT DISTINCT SUBSTRING('09wb1', 0, 3))<=(SELECT DISTINCT SUBSTRING(examTime, 3, 5))  --------------------编程问答-------------------- 看看表中的字段和你的对应实体类的属性一致吗,还有参数干嘛不用占位符呢 --------------------编程问答--------------------
引用 1 楼 a110110108 的回复:
看看表中的字段和你的对应实体类的属性一致吗,还有参数干嘛不用占位符呢


同意1#楼同志 --------------------编程问答-------------------- hql更对象化吧。form后面更的是实体类名。不是你的表名(也可一样)是从实体类中查找。而不是从表中查找 --------------------编程问答-------------------- 报了什么错,不行不用HQL,支持sql的 --------------------编程问答-------------------- LZ 用的是SSH 吧!!!用的hibernate。。你可以直接用sql 语句,不用hql 这样比较方便

以下是得到List 集合代码  用的就是sql 语句
getSession().createSQLQuery("select * from dbo.Student").list();

希望能帮到你! --------------------编程问答-------------------- hql中支持DISTINCT操作符吗? --------------------编程问答--------------------
引用 6 楼 nobullet 的回复:
hql中支持DISTINCT操作符吗?

支持 --------------------编程问答-------------------- 虽然支持distinct但是挺影响性能的最好别用,因为指定distinct会导致在结果集中删除重复的行 --------------------编程问答-------------------- 不知道支不支持substring。。
补充:Java ,  Java EE
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,