问题描述
//查找用户拥有的角色,并按优先级从低到高排序 "select r.id from UsersRoles ur join ur.role r join ur.user u " +"where u.id = ? order by ur.orderNo desc";List roleIds = hibernateTemplate.find(hql,userId);能解释 一下这个 Hql 语句吗 问题补充:finallygo 写道
解决方案
你可以在hibernate.properties中配置show_sql=true来显示执行的sql语句我猜测执行的语句应该如下:select t2.id from UsersRoles t1 inner join role t2 on t1.role_id=t2.role_id inner join user t3 on t1.user_id=t3.user_id and t3.user_id=?order by t2.orderNo desc
解决方案二:
//查找用户拥有的角色,并按优先级从低到高排序 "select r.id from UsersRoles ur join ur.role r join ur.user u " + "where u.id = ? order by ur.orderNo desc"; List roleIds = hibernateTemplate.find(hql,userId); 能解释 一下这个 Hql 语句吗 两个表关联查询而已,?代表的就是你传入的userId值,hql就是上面那句查询sql。
时间: 2024-07-28 19:08:48