首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2EE开发 >

hql话语左外连接支持 where b.aId (+)= a.id 写法吗

2012-12-20 
hql语句左外连接支持 where b.aId (+) a.id 写法吗SQL语句左外连接这样写不会报错,但HQL语句报错了,不知

hql语句左外连接支持 where b.aId (+)= a.id 写法吗
SQL语句左外连接这样写不会报错,

但HQL语句报错了,不知道问题是不是处在这里
[最优解释]
(+)=这个是oracle特有的写法啊,用left outer join或者left join啊
[其他解释]
where b.aId (+)= a.id 这个是oracle特有的,HQL不能用…
[其他解释]
用 join的话 表之间关联关系 需要配 在 mapping里 
[其他解释]

引用:
悲剧了,改成 from Aa a left join Bb b on b.aId = a.id 

还是报错


HQL带的连接语句只能是实体与该实体的属性 进行连接
其意义就是为了优化(通过延迟加载查询关联的属性实在太傻逼了..)
我知道的就这些 期待其他人补充 你也可以用SQL查询然后addEntity
[其他解释]
当然不行了,这又不是H的
[其他解释]
不要以为 HQL 是万能的,要 HQL 能跟 SQL 划等号的话,那就牛 B 了!
[其他解释]
引用:
SQL语句左外连接这样写不会报错,

但HQL语句报错了,不知道问题是不是处在这里


+1
[其他解释]
该回复于2011-03-22 16:01:50被版主删除
[其他解释]
悲剧了,改成 from Aa a left join Bb b on b.aId = a.id 

还是报错 
[其他解释]
 mapping里面如何配,能给个例子吗?
[其他解释]
我也出现一个连接问题,现在不知道怎么解决,
select a.name,a.jobnum,a.password,b.name,a.id,a.status,a.role_id,c.rolename from (Teacher a a left outer join Department b on a.department_id=b.id )left outer join Role c on c.id=a.role_id where  a.status=1  order by a.id desc
Oracle 可以用,HQL居然报ERROR - line 1:82: unexpected token: (
   求解脱啊

热点排行