0

我有一张佣金表

ID Agent  Comm.
1  Agent1 $30 
2  Agent1 $40
3  Agent2 $40
4  Agent1 $30
5  Agent2 $40

所以我需要计算来自同一代理和相同金额的分组付款,但检索所涉及的 ID(逗号分隔)

例子

Agent  Comm. Count Ids
Agent1 $30   2     1,4
Agent1 $40   1     2
Agent2 $40   2     3,5

我可以只在一个查询中执行此操作吗?

我的查询现在没有 ids 列

select count(id) as Count, agent,comm from commissions
group by agent,comm order by agent asc ,comm asc
4

1 回答 1

1

是的你可以。

MySQL 有一个内置函数,称为GROUP_CONCAT()连接行而不是列。

SELECT  Agent, Comm,
        COUNT(*) TotalCount,
        GROUP_CONCAT(ID) IDs
FROM    Commissions
GROUP   BY Agent, Comm
于 2013-04-12T17:25:51.883 回答