MySQL Query根据列值获取相同连续两行的计数

时间:2017-03-31 07:25:28

标签: mysql sql group-by

我需要一个sql查询,它会根据col2值获取col3的值a到b的唯一可能组合的计数。 在下表中,值a到b有两次(col1-1为2到3,col1-2为2到3)。同样,我需要在表中连续出现的这种可能的a到b字段的数量(我们可以从col2-2,3中识别出来)

我有下表:

      col1   col2   col3    
       1       2      a    
       1       3      b
       1       4      c
       2       2      a
       2       3      b
       2       4      c

Output:

f1  f2  count
a   b    2
b   c    2

此处 col1 + col2 是主键,查询应该是通用的n n可能的连续组合。

1 个答案:

答案 0 :(得分:0)

当我在寻找解决问题的可能性时,我自己找到了一个......

下面是获得我想要的所需输出的查询,非常简单。

select a.col3 f1,
b.col3 f2,
count(*) count  
from testTable b,testTable a
where 
a.col2 = b.col2 -1
and a.col1 = b.col1
group by ev1,ev2;