sql >> データベース >  >> RDS >> Mysql

SQLクエリを使用して連続番号を選択する

    これを試してください:

    select seat, status
    from seats
    where seat >= (
       select a.seat
       from seats a
          left join seats b on 
             a.seat < b.seat and
             b.seat < a.seat + 4 and
             b.status = 'Available'
       where a.status = 'Available'
       group by a.seat
       having count(b.seat)+1 = 4
       )
    limit 4
    

    これは、4つの連続したシートを選択するように設定されています。 「4」のすべてのインスタンスを希望のシート数に調整して、必要なものを取得します。



    1. mysqlテーブルに挿入し、現在のデータを上書きします

    2. 値を持つ一時列を追加します

    3. SQLスクリプトを実行して、テーブルと行を作成します

    4. 使用されるSELECTステートメントの列数が異なります