hibernate left join 问题,,,,求助。。。。

cssteven 2007-05-07 02:12:59
我数据库是orcale,我写了个sql语句,在orcale客户端可以运行,sql如下
select m.customerId,sum(mi.integral)
from Member m left outer join
MemberIntegral mi on m.customerId=mi.customerId
group by m.customerId

其中Member 是会员表,

CustomerId Char(11) N PK 会员号
MemberCardNumber Varchar(20) 会员卡号
LoginID Varchar(20) N 登陆名
Password Char(16) N 密码
MobilePhone1 Varchar(20) Y 手机1
..
.
.

MemberIntegral 是会员积分表,

IntegralId Int N 自动生成
CustomerId Char(11)NPK 客户号
Integral Numeric(9)N 积分




是一对多的关系
现在我要在hibernate上实现刚才sql的功能,就是查出会员信息以及会员的积分总数

select m from Member m left join fetch m.memberIntegrals mi where m.customerId=mi.customerId

这样是可以的
但我还想得到sum(mi.integral)即想
select m ,sum(mi.integral) from Member m left join fetch m.memberIntegrals mi where m.customerId=mi.customerId
就不行了报错,,,也不知道怎样加group by。。。。。



怎么办呢。。。。。。

...全文
812 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
Saro 2007-07-19
  • 打赏
  • 举报
回复
select m,sum(mi.integral) from Member m join m.memberIntegrals mi group by m
tangxiaogang510 2007-07-18
  • 打赏
  • 举报
回复
不对吧,我参照你的前一部分怎么会不对呢?
tangxiaogang510 2007-07-18
  • 打赏
  • 举报
回复
up
intotheheart 2007-05-07
  • 打赏
  • 举报
回复
貌似hibernate加不了group by,但是加不了m+sum肯定有问题。建议你在数据库建个视图,然后用hibernate对视图操作吧。如果有其他更好的方法,学习。
www203 2007-05-07
  • 打赏
  • 举报
回复
帮顶

67,515

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧