sql >> Databasteknik >  >> RDS >> Mysql

Mysql Välj Nästa &Föregående rad inte ordning efter id

  SELECT *,
         'next'
    FROM table
   WHERE `name` > 'BBB'
ORDER BY `name`
   LIMIT 1

UNION

  SELECT *,
         'previous'
    FROM table
   WHERE `name` < 'BBB'
ORDER BY `name` DESC
   LIMIT 1

Om du inte kan någon speciell BBB name fältvärde - du kan ersätta det med underfråga som SELECT name FROM table WHERE id = 42 , där 42 är det kända ID värde.



  1. Kan inte öka max_open_files för Mysql max-anslutningar i Ubuntu 15

  2. Släpp unik nyckel med flera kolumner utan att tappa främmande nyckel?

  3. Golang MySQL frågar efter odefinierad mängd args med IN-operatorn

  4. Lagrad procedur som automatiskt tar bort rader äldre än 7 dagar i MYSQL