sql语句中取最大值 转换BigDecimal类型

             sql.append(" SELECT dc.ID as \"deviceCompositionId\", ");
             sql.append(" dc.PREID as \"deviceCompositionPreId\", ");
             sql.append(" dc.TOPID as \"deviceCompositionTopId\", ");
             sql.append(" dc.COMPANYID as \"deviceCompositionCompanyId\", ");
             sql.append(" dc.name as \"deviceCompositionName\", ");
             sql.append(" dc.viewOrder as \"deviceCompositionViewOrder\", ");
             sql.append(" mi.MODULE_ID as \"moduleId\", ");

             sql.append(" mi.MODULE_NAME as \"moduleName\", ");

// 这边是对fault_level 取最大值 然后插入实体类的faultMaxLevel 类型是BigDecimal
            sql.append(" (select max(fault_level) from fault_info where module_id = mi.MODULE_ID ) as \"faultMaxLevel\",");

//同上
             sql.append(" (select count(0) from fault_info where module_id = mi.MODULE_ID group by module_id) as \"faultNumber\" ");
             sql.append(" FROM ((COMPOSITION_MODULEINFO cm ");
             sql.append(" RIGHT JOIN DEVICECOMPOSITION dc ");
             sql.append(" ON dc.id = cm.devcom_id) ");
             sql.append(" LEFT JOIN MODULE_INFO mi");
             sql.append(" ON cm.module_id = mi.module_id ) ");
             sql.append(" where  1=1 and (mi.enable = '1' or mi.enable is null) ");
             sql.append(" order by dc.viewOrder,dc.ID,mi.module_id ");
             
        Query query =sessionFactory.getCurrentSession().createSQLQuery(sql.toString());

        Query transQuery = query.setResultTransformer(Transformers.aliasToBean(DeviceCompositionMouduleDTO.class));

//报错 显示在这一行~
        List<DeviceCompositionMouduleDTO> list=transQuery.list();


  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值