对不同的行进行分组并计算重复次数

时间:2015-07-20 17:08:58

标签: mysql count group-by distinct

我是SQL的新手,我想创建一个sql函数(或语句),它根据firstnamelastname对我的事务表进行分组,同时计算重复次数和id 。

transaction包含以下列: idfirstnamelastname等。

我希望我的返回结果在Json中看起来像这样:

[{
    firstname:'John',
    lastname:'Doe',
    transaction_num:6,
    transaction_ids:[1,3,56,78,88,90]
},{
    firstname:'Jane',
    lastname:'Smith',
    transaction_num:2,
    transaction_ids:[8,9]
}]

有没有办法在sql中执行此操作?

1 个答案:

答案 0 :(得分:0)

SELECT firstname,lastname,GROUP_CONCAT(id) transaction_ids,COUNT(*) transaction_num FROM t GROUP BY firstname,lastname

正如Mihai所说,完美的答案!