Hibernate HQL 左连接 查询 两张表

由于项目需要,现在需要进行两张表连接查询,但前期hql已经写好,现在只是想在原有的基础之上再加上一个表的连接查询,本来如果用本地sql的方式很容易实现,但是原来已经用hql来写,并且程序本身在取得查询结果后如果查询出来是对象,对后面的操作很方便,故要在原有hql基础之后添加外连接,如下:

if("0".equals(orgId)){ //顶级机构查询所有下级
hqlStrBuffer.append("select u from User u,Organization o where u.organization.orgId = o.orgId");
}


注意:

1、传统的方式是写成 from  User ......这种形式,但此处要连接表,后面再加一张表,故写成:

    from  User u ,Organization o  后面再加上两个表的连接条件

2、通过两个表查询,但是只是想要其中的一个对象,写法:

    select u from User u ……

至此,实现hql连接表查询




你可能感兴趣的:(sql,Hibernate,user)