日期:2014-05-18  浏览次数:20654 次

hibernate 多表关联查询 HQL 查询语句?
查询出 A表的  ID 和 NAME
查询出 B表的所有字段
查询出 C表的 salary

该三个表都通过 ID 关联

A表的主键是 ID
B表的主键是 ID 和修改时间
C表的主键是 ID 和 修改时间 和修改次数

求写一条 HQL语句?
我几点不理解的地方 求大神指点。有道理即给分

多表关联的时候hbm.xml关联的时候而且多主键的时候应该怎么处理,注意哪里
可以直接用A表的 ID many-to-one其他两个表的ID吗?

hql查询出来的结果 怎么接收呢。
接收的这个对象要把查询出来的三个表的字段全部加一起new个新class么?

有道理即给分  谢谢



------解决方案--------------------
参考下下面的语句吧,大体上和SQL类似
select?
?????????
student0_.id?as?id1_0_,??????????
course2_.id?as?id4_1_,??????????
student0_.Sno?as?Sno1_0_,??????????
student0_.Sname?as?Sname1_0_,??????????
student0_.Sdept?as?Sdept1_0_,?
student0_.Sage?as?Sage1_0_,??????????
student0_.Ssex?as?Ssex1_0_,??????????
student0_.Saddress?as?Saddress1_0_,??????????
course2_.Cno?as?Cno4_1_,??????????
course2_.Cname?as?Cname4_1_,??????????
course2_.Ccredit?as?Ccredit4_1_?????
from?
?????????
joblog.student?student0_?????
left?outer?join??????????
sc?course1_?
??????????????
on?student0_.id=course1_.sno?????
left?outer?join?
?????????
joblog.course?course2_?
??????????????
on?course1_.cno=course2_.id?????where?
????????
?student0_.Sname='李XXX'