主キーpk
とnull許容列があるとしますcol
。ランレングスの降順で、でcol
ある行の連続シーケンスを検索したいと思います。NULL
ランレングスのみを返すクエリを有効な回答として受け入れますが、将来的には(おそらく別の質問で)pk
、各実行の開始点または終了点のいずれかを示すいくつかの質問を知りたいと思います。
データ例:
pk col
-- ---
1 'a'
2 NULL
3 'b'
4 NULL
5 NULL
6 NULL
7 'c'
8 NULL
9 NULL
10 'd'
期待されるクエリ結果:
runlengths
----------
3
2
1
可能であれば標準SQLを使用しますが、これはMySQLに格納されている本番データセットを分析するためのものであるため、そのコンテキストで最適に機能するものは何でもかまいません。