私はこのようなテーブルを持っています:
Type | Time
1 | 234234
2 | 234235
1 | 234238
3 | 234239
4 | 234240
1 | 234242
2 | 234245
type=1
これらすべての行の数と次の行の数を数えたいと思いますtype=2
。
例: ここでの結果は です2
。where
節のつけ方がわかりませんnext row
。
合計を取得するためにユーザー定義変数を実装できるはずです。
select count(*) Total
from
(
select type,
@row:=(case when @prev=1 and type=2 then 'Y' else 'N' end) as Seq,
@prev:=type
from yourtable, (SELECT @row:=null, @prev:=null) r
order by time, type
) src
where Seq = 'Y'
デモで SQL Fiddle を参照してください