次の定義を持つテーブルがあります
CREATE TABLE mytable
(
id INT IDENTITY(1, 1) PRIMARY KEY,
number BIGINT,
status INT
)
およびサンプルデータ
INSERT INTO mytable
VALUES (100,0),
(101,0),
(102,0),
(103,0),
(104,1),
(105,1),
(106,0),
(107,0),
(1014,0),
(1015,0),
(1016,1),
(1017,0)
行だけを見て、status = 0
どのようにNumber
値を連続した連続番号の範囲に折りたたんで、各範囲の開始と終了を見つけることができますか?
つまり、サンプルデータの場合、結果は次のようになります
FROM to
Number 100 103
Number 106 107
Number 1014 1015
Number 1017 1017