首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 .NET Java 游戏 视频 人才 外包 培训 数据库 书店 程序员
中国软件网
欢迎您:游客 | 登录 注册 帮助
  • 一个HQL的问题 [无满意答案结帖,结帖人:jiangpingzhan]
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • jiangpingzhan
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    • 结帖率:
    发表于:2008-08-20 11:23:13 楼主
    HQL 如下:
    select m.agent.name , count(m.agent.id), count(m.user.id) , count(m.agent.id)-count(m.user.id) from MacManager as m group by m.agent.name


    去掉 count(m.agent.id)-count(m.user.id) 这段能正常运行
    ,试过将 (count(m.agent.id)-count(m.user.id) ) as als 不过还是不行

    求教大侠们 
    20  修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • fosjos
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-21 09:02:301楼 得分:0
    贴出异常信息,或show_sql内容

    可能是hibernate的bug吧
    用最新版的试试
    hql建议不要用复杂的语句
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • liukang4098
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-21 09:04:322楼 得分:0
    up
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • dsfsdafwe
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-21 09:20:423楼 得分:0
    这个问题我以前也接触过,开始的时候我也找不到问题的原因,后来我进了一个技术交流群,这个群里的人挺多的,在里面可以沟通技术,你可以进去看一下.群号是:四-三-四-八-零-零-七-一。另外,这个群里可以接项目。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • SKY138421
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-21 14:39:054楼 得分:0
    你这样尝试在数据库的控制台执行也是不行的,用count查询出来是一条语句,而m.agent.name是多个结果,你可以看看他报的错误就知道了。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • jinsu_st
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-22 13:38:535楼 得分:0
    改下hql吧:

    select name ,countagent,countuser,countagent-countuser from(

    select m.agent.name as name , count(m.agent.id) as countagent, count(m.user.id) as countuser , from MacManager as m group by m.agent.name
    )

    直接用原生sql查询就好了


    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • zq620901
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-10-06 17:21:026楼 得分:0
    学习
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • lixiaolong3399
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-10-06 23:51:007楼 得分:0
      你可以用存储过程呀。
      创建存储过程, 分别查出两个值, 在编写查询。
      只要执行存储过程就可以啦。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • wo5ni1_888
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-10-07 09:49:358楼 得分:0
    学习
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • nqyfeng
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-10-07 11:20:049楼 得分:0
    贴出sql
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • Java_qiuzhi
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-10-07 12:36:5910楼 得分:0
    可以试试把查出来的属性再封装到原来那个的pojo类里 再pojo里多架个构造方法
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • zgxzowen
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-10-07 13:29:5611楼 得分:0
    换一个hql解析器试下,可以配置在hibernate.hbm.xml里面
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • jfheng
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-10-07 13:39:4612楼 得分:0
    可以试试把查出来的属性再封装到原来那个的pojo类里 再pojo里多架个构造方法

    十楼的方法比较高
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • jumpheightway
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-10-11 18:40:0113楼 得分:0
    写个类似sql语句跑下不就知道了
    何必整得那么复杂呢
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • yihaijian1
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-10-12 15:55:1314楼 得分:0
    Java code
    SQLQuery query = session.createSQLQuery(sql)

    用原生sql查询吧
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • qiulian1987
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-10-16 14:37:4615楼 得分:0
    因为HQL是查询对象的,列就对象的属性,你那里就是因为对象没有那个属性,所以报错,我刚好碰到了,我用视图搞的,你也可以搞一下。
    修改 删除 举报 引用 回复

    网站简介广告服务网站地图帮助联系方式诚聘英才English 问题报告
    北京创新乐知广告有限公司 版权所有 京 ICP 证 070598 号
    世纪乐知(北京)网络技术有限公司 提供技术支持
    Copyright © 2000-2008, CSDN.NET, All Rights Reserved