关于sql 跟hql的问题?

来源:百度知道 编辑:UC知道 时间:2024/06/07 07:13:14
String sql="SELECT tbu.userId,tbu.userName,tbr.roleName,tbo.orgName from Tb_User tbu
left join Tb_Userinrole ur on tbu.userId=ur.userId
left join Tb_Role tbr on tbr.roleId = ur.roleId
left join Tb_Userinorg uo on uo.userId = tbu.userId
left join Tb_Org tbo on tbo.orgId = uo.orgId where 1=1"
上面的sql语句是以前项目所写的
现在要用ssh框架,我把它写成下面这种方式
String hql="SELECT tbu.userId,tbu.userName,tbr.roleName,tbo.orgName from TbUser tbu ,TbUserinrole ur ,TbRole tbr , TbUserinorg uo,TbOrg tbo
where tbu.userId=ur.id.userId and tbr.id.roleId = ur.id.roleId and uo.id.userId = tbu.userId and tbo.id.orgId = uo.id.orgId";
getHibernateTemplate().find(hql);
虽然不报错 但是结果不对 。应该怎么改?
sql 里面对应的是表名 hql里面对应的是对象名字 。 用左联接 联接二个表没问题 ,问题是我现在查询的是五个表 分别是 用户表(TbUser),群组表(TbOrg),角色表(TbOrle),用户角色表(Tb_Userinrole),用户群组表(Tb_Userinorg)
这个HQL 语句 应该怎么写? 急!!!!!!急!!!!
用Criteria 查询 不是一样的么? Criteria可以直接通过表名查询数据库的不
String sql="SELECT tb

风耕种的田野。
风刮来,
形式的大门紧闭,
意义的大门洞开。
在风的面前,
尘土常常拒绝祷告,
除非是为启程而作祈祷。
风吹来,

为什么不用Criteria查询呢?