HQL中的一对多查询

 情况:KAM中有一个department,department有多个IATA ,如果要按照KAM的Name或者department的Name来查,则很简单

   from KAM as kam where kam.Name="**" and kam.Department.Name="***"

     但是如果是按照IATA的名字呢?

   from KAM as kam where kam.Name="**" and kam.Department.Name="***" and kam.Depatment.IATAList.IATACode="***"

      上面显然不行,因为kam.Depatment.IATAList是个集合,没有Name属性

     后来查到这里可以这么写
      select distinct kam from KAMVO as kam  inner join   kam.Department.IATAList as iATA where kam.name="***" and   
      iATA.IATACode="****"

      可以参照MANAGER/KAM/COND/KAMCOND.cs

      注:采用INNER JOIN 实属无奈,貌似HQL里面ORACLE方言不支持RIGHT JOIN。好在后面还要SELECT一下,就在后面加了 distinct
       

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值