Ver Mensaje Individual
  #10 (permalink)  
Antiguo 09/06/2014, 13:33
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: ORDER BY y OFFSET pero con letras

Cuando usas UNION, no puedes poner un ORDER BY así nomás, donde quieras, porque el ORDER BY final es el que imapcta sobre todo el resultado.
Ni tampoco podrías poner UNION, sino que debes usar UNION ALL.

Para lograr cosas tan enredadas hay que usar formas de cisulta sy subconsultas algo complejas.
Código MySQL:
Ver original
  1.     FROM
  2.         (SELECT *
  3.         FROM imagenes
  4.         WHERE id>=idBuscado
  5.         ORDER BY orden) T1
  6.     UNION ALL
  7.     SELECT *
  8.     FROM
  9.         (SELECT *
  10.         FROM imagenes
  11.         WHERE id < idBuscado
  12.         ORDER BY orden) T2

Ten bien presente que NO PUEDES poner un ORDER BY al final de esta consulta, porque reordenará todo el resultado.

Todos estos detalles salen del manual de referencia. tenlo presente.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)