http://thedailywtf.com/Articles/The-Hot-Room.aspxMySQL: seleccionar filas condicionalmente siguiente y anterior
Ves como en la parte inferior hay enlaces a los artículos siguientes y anteriores ("sin preparación para Divide_By_Zero" y "un juego completamente diferente")? ¿Cómo hago eso, pero seleccionando los artículos no privados siguientes y anteriores? Esto funciona para seleccionar el próximo artículo:
SELECT * FROM articles WHERE id > ? AND private IS NULL
Pero no puedo encontrar la manera de seleccionar el artículo anterior.
¿Cuál es la forma correcta/eficiente de hacer esto, preferiblemente en una consulta?
Esto se comporta raro cuando estás en el primer/último registro de tu selección. Devuelve solo un registro, pero no puedo encontrar una manera de averiguar cuál. – Fuzzy76
Si el ID del artículo actual es 10 y la consulta solo arroja un resultado, esto es lo que puede hacer: - si el ID es inferior a 10, el artículo es anterior - si el ID es superior a 10, el artículo es más reciente Si todavía no está resolviendo el problema, puede ampliar la consulta y agregar alguna columna significativa, como 'seleccionar 'más nuevo' como cuando, * de artículos ...' –