ホームページ >データベース >mysql チュートリアル >MySql中关于某列中相同数值连续出现次数的统计_MySQL

MySql中关于某列中相同数值连续出现次数的统计_MySQL

WBOY
WBOYオリジナル
2016-06-01 13:36:09997ブラウズ

bitsCN.com

MySql中关于某列中相同数值连续出现次数的统计

 

原表如下: www.bitsCN.com  

100

101

102

100

100

103

104

102

102

105

106

101

101

输出如下:  www.bitsCN.com  

100    1

101    2

102    3

100    4

100    4

103    5

104    6

102    7

102    7

105    8

106    9

101    10

101    10

sql如下:

SET @t1=0;

SET @tp=-1;

select   

  @t1 := @t1 + (case when @tp=n then 0 else 1 end) as c, 

  n,

  @tp := n

from nums

order by n;

 

测试数据:

create table nums( n int );

insert into nums values (100), (101), (101), (102);

 

输出结果:

| C |   N | @TP := N |

----------------------

| 1 | 100 |      100 |

| 2 | 101 |      101 |

| 2 | 101 |      101 |

| 3 | 102 |      102 |

 

bitsCN.com
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。