Autor Tema: [DUDA] Consultar el siguiente/anterior ID de una tabla  (Leído 374 veces)

Desconectado judoka

  • PHPero Avanzado
  • ****
  • Mensajes: 255
  • Karma: 4
  • Sexo: Masculino
  • Programando hasta lo mas alto.
    • Ver Perfil
[DUDA] Consultar el siguiente/anterior ID de una tabla
« en: 20 de Enero de 2011, 22:04:36 pm »
Bueno, lo que quisiera hacer es saber cual es el numero de ID(éste es auto_increment) anterior o posterior a una consulta. Por ejemplo:
Código: [Seleccionar]
index.php?pag=Ver&ID=39y en mi tabla están los siguientes ID's:
Código: [Seleccionar]
39, 36, 35, 30, 19, 18, 17, 12Y quiero si por ejemplo he buscado por el ID 39, me diga solo cual es el siguiente (ya que es el número más alto), en este caso sería 36.
Si selecciono el 30, que me diga cual es el siguiente y el anterior, en este caso 35 y 19.
Y si selecciono 12, que me diga solo cual es el anterior (ya que es el número más bajo), en este caso 18.
Creo que me he explicado medianamente bien.
Un saludo y gracias por todo (=

Comunidad PHPeros

[DUDA] Consultar el siguiente/anterior ID de una tabla
« en: 20 de Enero de 2011, 22:04:36 pm »

Desconectado westwest

  • PHPero Master
  • ******
  • Mensajes: 2.837
  • Karma: 104
  • Sexo: Masculino
    • Ver Perfil
Re:[DUDA] Consultar el siguiente/anterior ID de una tabla
« Respuesta #1 en: 20 de Enero de 2011, 23:03:57 pm »
Si tienes por ejemplo:
3, 9, 13, 16, 17, 20, 24
Yo cojo el 16; los anteriores serán menores X < 16
3, 9 o 13.
Necesito uno, en este caso el MAYOR pues estará mas cerca de 16; ordeno de mayor a menor
13, 9, 3
Cojo uno:
13.
Pasado a mysql sería
SELECT * FROM `x` WHERE id < 'NUM' ORDER BY id DESC LIMIT 1

Y para los siguientes; te haces a la idea, no?

Desconectado judoka

  • PHPero Avanzado
  • ****
  • Mensajes: 255
  • Karma: 4
  • Sexo: Masculino
  • Programando hasta lo mas alto.
    • Ver Perfil
Re:[DUDA] Consultar el siguiente/anterior ID de una tabla
« Respuesta #2 en: 21 de Enero de 2011, 00:00:20 am »
om.. no lo había pensado ! (= muchísimas gracias, voy a probar a ver que tal.
K+!