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

次の行と前の行とともに行を選択します

    idで行を選択しているため、これは複雑です。 、ただし、別のフィールドmodified_timeで隣接するフィールドを選択します 。

    アイデアは、変数を使用して行を列挙することです。そして、別の行を使用してidの値を計算します あなたが気にかけていること。サブクエリでこれを実行してから、必要な行を選択します。

    SELECT t.*
    FROM (SELECT `id`,
                  @rn := if(@rnid := if(t.id  = '".id."', @rn + 1, @rnid),
                            @rn + 1, @rn + 1
                           ) as rn
          FROM {#table} t       
               "other_part_of_query" cross join
               (select @rn := 0, @rnid := 0) vars
          ORDER BY `modified_time` DESC
         ) t
    WHERE rn in (@rnid - 1, @rnid, @rn)
    


    1. ドロップダウンボックスで選択したアイテムを設定するにはどうすればよいですか

    2. PHPMyAdminが作成したデータベースを介したC#とのMySQL接続

    3. PDOを使用してgodaddyのデータベースに接続する際に問題が発生しました

    4. MySQL一意の/異なる結果を返す方法は?