• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:いくつ続いているか知りたい)

最新のユーザーネームを連続して数える方法

このQ&Aのポイント
  • バージョン4.1.16を使っている状況で、idの大きい方から順番にuser_nameが連続している回数を知りたいです。
  • 例えば、idが8から4までのレコードについて、user_nameが連続している回数を知りたいです。
  • このような情報を取得するためには、SQL文を使用して記述する必要があります。

質問者が選んだベストアンサー

  • ベストアンサー
  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.2

ぱっとおもいつき、もっと効率的な方法はあると思いますが・・・ SET @PRE='',@RENZOKU=1; CREATE TEMPORARY TABLE RENZOKU_TEST SELECT if(@PRE=user_name,@RENZOKU:=@RENZOKU+1,@RENZOKU:=1) as RENZOKU,@PRE:=user_name as user_name FROM test ORDER BY id; SELECT MAX(RENZOKU) AS RENZOKU FROM RENZOKU_TEST

takagoo100
質問者

お礼

ご返答ありがとうございます。 さっそく試してみて、できました。ありがとうございます。

その他の回答 (1)

  • calltella
  • ベストアンサー率49% (317/635)
回答No.1

補足をお願いします。 確かに「id 4~8」まで佐藤が続いていますが「id 1~2」も佐藤が続いています。 「id 1~2」は無視してもいいのですか? 5連続していた場合、欲しい結果は【5】ですか? それとも【8,4】ですか?

takagoo100
質問者

補足

ご返答ありがとうございます。 補足します。 「id 1~2」は無視していいです。 欲しい結果は【5】です。 先頭からいくつ続いているかが知りたいです。

関連するQ&A