sql >> Base de Datos >  >> RDS >> Mysql

¿Cómo puedo seleccionar una fila adyacente en sql cuando se ordena por un campo diferente?

Si los me gusta son números únicos, seguir debería funcionar.

anterior:

SELECT * FROM table WHERE likes < (SELECT likes FROM table WHERE id = ID) ORDER BY likes DESC LIMIT 1

siguiente:

SELECT * FROM table WHERE likes > (SELECT likes FROM table WHERE id = ID) ORDER BY likes ASC LIMIT 1

Puede cambiar 1 de ellos a <=o>=y agregar WHERE id != ID