hql中的左连接left join 表示查询左边的东西,当查右边的东西且右边数据为空时,这时候会报错,要改成右连接。
左连接:left join
如A left join B 即在B中有的数据就取出来,不管A中是否有没有数据,即A有数据就取出,没有就为null;
右连接:right join
如 A right join B 即在A中友个数据就取出来,不管B中是否有没有数据;
所以:A left join B 与 B right join A 是一样的效果
内连接:inner join
A inner join B 表示A,B中同时都有的数据才取出来;
左连接:left join
如A left join B 即在B中有的数据就取出来,不管A中是否有没有数据,即A有数据就取出,没有就为null;
右连接:right join
如 A right join B 即在A中友个数据就取出来,不管B中是否有没有数据;
所以:A left join B 与 B right join A 是一样的效果
内连接:inner join
A inner join B 表示A,B中同时都有的数据才取出来;