Mysql 计算ID如何具有相同的联接组合?

Mysql 计算ID如何具有相同的联接组合?,mysql,sql,Mysql,Sql,我有一个连接表,结果如下 IDA IDB QTY A 3 1 A 4 1 A 5 1 B 3 1 B 4 1 C 3 2 D 3 2 E 3 1 F 4 1 G 3 1 G 4 1 G 5 1 H 3 3 H 4 3 H 5 3 我不知道如何计算IDB和QTY条件相同的IDA 所以我想要的是: Combination of IDB - QTY (3-1, 4-1, 5-1

我有一个连接表,结果如下

IDA IDB QTY
A   3   1
A   4   1
A   5   1
B   3   1
B   4   1
C   3   2
D   3   2
E   3   1
F   4   1
G   3   1
G   4   1
G   5   1
H   3   3
H   4   3
H   5   3
我不知道如何计算IDB和QTY条件相同的IDA

所以我想要的是:

Combination of IDB - QTY 

(3-1, 4-1, 5-1) = 2 from IDA (A and G)
(3-1) = 1 from IDA (E) 
(3-2) = 2 from IDA (C and D) 
所以基本上我想计算IDA的数量,他们有相同的IDB和QTY组合。我该怎么办?我还是不明白该如何质疑这种逻辑,谢谢

编辑:


我想要的是一次查询的结果,我不会手动设置IDB-QTY组合的Where条件。(因此基本上结果不是来自Where条件)

您可以使用聚合和
group\u concat()
函数

select group_concat( ida order by ida ) as grouped_letters, count(*) as count
  from
  (
   select ida, count( idb - qty ) as ct, sum( idb - qty ) as sm
     from tab
    group by ida
  ) q
 group by ct, sm
 order by ida;


+---------------+-----+
|grouped_letters|count|
+---------------+-----+
| B             |  1  | 
| C,D           |  2  |
| E             |  1  |
| F             |  1  |
| A,G           |  2  |
| H             |  1  |
+---------------+-----+

不,我不想手动设置条件(3-1,4-1,5-1)我想要的是自动计算组合的所有结果……天哪,你是天才,巴巴罗斯先生。我只想要计数,而不是艾达的名单。。。但该死的,这是如此整洁,更是我所需要的(以积极的方式)。再次谢谢你,对不起。我想在我的代码中尝试实现这个逻辑之后,我仍然有一些问题。。。我能问更多的问题吗?但不是在这里。@doooooof我当然,你可以用barbaros_ozhan@yahoo.comah对不起,我已经解决了!使用concat小组确实帮助了我。