Java Hibernate查询语言中的SQL子查询
我是HQL的新手,正在处理子查询 我有以下SQL子查询:Java Hibernate查询语言中的SQL子查询,java,mysql,hibernate,Java,Mysql,Hibernate,我是HQL的新手,正在处理子查询 我有以下SQL子查询: select * from ( select * from table order by columnname ) as subquery where columnvalue = 'somevalue'; 我想在HQL中启动查询。我编写了以下代码: Result = session.createQuery("from (from table order by columnname) as subquery where colu
select * from (
select * from table order by columnname
) as subquery
where columnvalue = 'somevalue';
我想在HQL中启动查询。我编写了以下代码:
Result = session.createQuery("from (from table order by columnname) as subquery where columnvalue = :somevalue")
.setParameter(/*setting all parameters*/)
.list();
我得到一个例外:
QuerySyntaxException:未使用的令牌:第1行第10列[来自…]
我的SQL查询提供了正确的结果。如何在HQL中编写它?我不认为HQL可以在from子句中执行子查询 注意这句话: 请注意,HQL子查询只能出现在select或where子句中
如果您执行本机SQL会更好。您能编写您正在使用的真实查询吗?选择*从选择*从员工订单按薪资作为子查询,其中经理='XYZ'按部门排序;为什么有子查询?要么你想按薪水排序,要么你想按部门排序!?!?!?对不起,输入错误:选择*from选择*from employee order by salary作为子查询,其中manager='XYZ'按部门分组。我想按工资降序排序,找到每个部门工资最高的员工,然后按部门分组。我需要在hibernate中编写查询。我正在尝试以本机SQL执行查询,但它正在抛出org.hibernate.exception.genericjdbception:无法提取ResultSet异常。我被解雇的原因如下:session.createSQLQueryselect*from select*from employee order by salary as subquery,其中manager='XYZ'按部门分组。