sails-mysql 使用 groupBy 进行分组遇到的坑

原创 2016年08月30日 17:00:44

示例代码

Model.find({ 
	groupBy: 'name'
}).exec(function (err, data) {
	console.log(data);
});
直接抛出错误:

Error (E_UNKNOWN) :: Encountered an unexpected error
AdapterError: Cannot groupBy without a calculation

纳闷不已,查看底层源代码

if(options.groupBy || options.sum || options.average || options.min || options.max) {
          if(!options.sum && !options.average && !options.min && !options.max) {
            return cb(Errors.InvalidGroupBy);
          }
}
看明白了吧,groupBy 要与 sum, average, min, max 成对出现,改代码如下:

Model.find({
	max: 'id',
	groupBy: 'name'
}).exec(function (err, data) {
	console.log(data);
});
正确取出数据。Sails.js 交流学习群 468455066

2016年8月30日 重庆-传说

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

mysql group by 用法解析(详细)

group by 用法解析 group by语法可以根据给定数据列的每个成员对查询结果进行分组统计,最终得到一个分组汇总表。 SELECT子句中的列名必须为分组列或列函数。列函数对于GROUP B...

MySQL对数据表进行分组查询(GROUP BY)

MySQL对数据表进行分组查询(GROUP BY) GROUP BY关键字可以将查询结果按照某个字段或多个字段进行分组。字段中值相等的为一组。基本的语法格式如下: GROUP BY 属性名 [...

mysql-关于group by和distinct

有一个需求,从一堆 id 相同记录中取得第一条记录,并显示所有字段 例: id         value 111     aaa 111    abc 222   bcefd 222   lkjdf...
  • hotdust
  • hotdust
  • 2016年05月27日 13:36
  • 727

MySQL多表查询之GroupBy

需求是根据主键id查询到顾客

Mysql数据分组GROUP BY 和HAVING,与WHERE组合使用

理解分组,可以这样:对GROUP BY子句后面跟随的列名进行分组,然后对每一个分组而不是整个表进行操作。 举例:在产品表中,检索每一个供应商提供的商品的数量。 mysql> SELECT vend_i...

MySQL之——GROUP BY分组取字段最大值

假设有一个业务场景,需要查询用户登录记录信息,其中表结构如下: CREATE TABLE `tb` ( `id` int(11) NOT NULL AUTO_INCREMENT, `uid` ...

关于MySql 对GroupBy进行排序的解决方案

很简单。。 SELECT * FROM (SELECT * FROM posts ORDERBY dateline DESC) GROUP BY  tid ORDER BY dateline...

Mysql5.7.11中groupby的sql语句引起的异常

遇到了异常: Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Expression #1 of SELECT...
  • moest
  • moest
  • 2016年03月30日 17:25
  • 1173

Linq 和 Lambda 查询中按照多个值进行分组GroupBy

创建要查询的对象: class Employee { public int ID { get;set; } public string FName { get; set; } pub...

LINQ实现多次调用GroupBy进行分组统计

網友在【微軟技術社群討論區】遇到的【LINQ 的問題】,將下列  SQL 語法轉換為 LINQ 語法使用:...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:sails-mysql 使用 groupBy 进行分组遇到的坑
举报原因:
原因补充:

(最多只允许输入30个字)