grails中使用group by后的totalCount问题

一、totalCount

最近在用grails开发项目,在createCriteria中使用group by的时候发现PagedResultList中的totalCount有问题。

查阅了很多官方的非官方的资料后,最终得出一条临时方便的解决办法:

int totalCount = Domain.executeQuery(‘select count(*) from
domain where id in(select min(id) from domain group by
grp1,grp2))‘)[0]

domain:你的domain的名称,注意大小写

grp1,grp2:你的group by 字段,注意大小写

二、顺便再记录一个

在createCriteria中使用group by 返回的聚合数据不是map的问题解决方法:

def results = Domain.createCriteria.list(max:10,offset:0){

setResultTransformer(CriteriaSpecification.ALIAS_TO_ENTITY_MAP)

projections{

groupProperty("grp1")

sum("sum1","sum1")

}

}

时间: 2024-12-29 23:40:28

grails中使用group by后的totalCount问题的相关文章

sql中的group by 和 having 用法解析

--sql中的group by 用法解析:-- Group By语句从英文的字面意义上理解就是“根据(by)一定的规则进行分组(Group)”.--它的作用是通过一定的规则将一个数据集划分成若干个小的区域,然后针对若干个小区域进行数据处理.--注意:group by 是先排序后分组:--举例子说明:如果要用到group by 一般用到的就是“每这个字” 例如说明现在有一个这样的表:每个部门有多少人 就要用到分组的技术select DepartmentID as '部门名称',COUNT(*) a

SQL 中的group by (转载)

概述 原始表 简单Group By Group By 和 Order By Group By中Select指定的字段限制 Group By All Group By与聚合函数 Having与Where的区别 Compute 和 Compute By 1.概述 “Group By”从字面意义上理解就是根据“By”指定的规则对数据进行分组,所谓的分组就是将一个“数据集”划分成若干个“小区域”,然后针对若干个“小区域”进行数据处理. 2.原始表 3.简单Group By 示例1 select 类别,

SQL查询语句 group by后, 字符串合并

原文:SQL查询语句 group by后, 字符串合并 合并列值 --******************************************************************************************* 表结构,数据如下: id value ----- ------ 1 aa 1 bb 2 aaa 2 bbb 2 ccc 需要得到结果: id values ------ ----------- 1 aa,bb 2 aaa,bbb,ccc 即:gr

10g中HASH GROUP BY引起的临时表空间不足

原本在9i上可以顺利完成的CTAS脚本,迁移到10g后运行总是报“ORA-1652: unable to extend temp segment by 128 in tablespace TS_HQY1_TEMP “无法扩展临时表空间的错误.应用人员表示该脚本涉及的数据量在迁移前后变化不大,而且令人匪夷所思的是在新的10g库上临时表空间大小已达40多个G,要远大于原9i库.很显然这不是由于临时表空间过小导致的该问题,更多的原因肯定是出在迁移后Oracle不同的行为方式上. 该脚本每月执行一次用以

Grails中使用Ajax

grails中很好的集成了Ajax,这里介绍利用Jquery的 getJSON方法进行Ajax异步传输. 使用步骤: 引入Jquery(.gsp 页面中引入 jquery.js) <script type="text/javascript" src="${resource(dir: 'assets/js', file: 'jquery.js')}"></script> Javascript 脚本中添加Ajax调用方法 function isP

Linq中join &amp; group join &amp; left join 的用法

Linq中join & group join & left join 的用法 2013-01-30 11:12 12154人阅读 评论(0) 收藏 举报  分类: C#(14)  文章转自:http://www.cnblogs.com/c-jquery-linq-sql-net-problem/archive/2011/01/17/LINQ_Inner_Join_Group_Join_Left_Join.html 我们在做SQL查询的时候经常会用到Inner Join,Left Join,

转载 sql中的group by 和 having 用法解析

sql中的group by 和 having 用法解析 --sql中的group by 用法解析:-- Group By语句从英文的字面意义上理解就是“根据(by)一定的规则进行分组(Group)”.--它的作用是通过一定的规则将一个数据集划分成若干个小的区域,然后针对若干个小区域进行数据处理.--注意:group by 是先排序后分组:--举例子说明:如果要用到group by 一般用到的就是“每这个字” 例如说明现在有一个这样的表:每个部门有多少人 就要用到分组的技术select Depar

算法学习 - 表达树的建立(后缀表达式法),树的先序遍历,中序遍历,后序遍历

表达树就是根据后缀表达式来建立一个二叉树. 这个二叉树的每个叶子节点就是数,真祖先都是操作符. 通过栈来建立的,所以这里也会有很多栈的操作. 树的先序遍历,中序遍历,后序遍历的概念我就不讲了,不会的自行百度,不然也看不懂我的代码. 下面是代码: // // main.cpp // expressionTree // // Created by Alps on 14-7-29. // Copyright (c) 2014年 chen. All rights reserved. // #includ

MySQL在windows系统中修改datadir路径后无法启动问题,报错1067

windows server2008下如何更改MySQL数据库的目录的帖子已经很多了,这里简单介绍一个步骤,如果不成功请先查看其它帖子. 更改默认的mysql数据库目录 将 C:\Documents and Settings\All Users\Application Data\MySQL\MySQL Server 5.1\data 改到 D:\MysqlData 1. 建立文件夹 D:\MysqlData 2. 停止 mysql 服务,将 "C:\Documents and Settings\