Ver Mensaje Individual
  #7 (permalink)  
Antiguo 12/11/2013, 05:43
davidj
 
Fecha de Ingreso: octubre-2003
Ubicación: España
Mensajes: 1.067
Antigüedad: 20 años, 6 meses
Puntos: 18
Respuesta: ¿ Hacer un SELECT listando primero los valores superiores a cero ?

Cita:
Iniciado por leonardo_josue Ver Mensaje
Hola davidj:

Creo que podrías hacerlo más simple, con un IF en el ORDER BY, si entendí correctamente lo que quieres hacer sería así:

Código MySQL:
Ver original
  1. mysql> SELECT id, descripcion FROM tabla;
  2. +------+-------------+
  3. | id   | descripcion |
  4. +------+-------------+
  5. |    0 | cero        |
  6. |    1 | uno         |
  7. |    2 | dos         |
  8. |    3 | tres        |
  9. |    4 | cuatro      |
  10. |    5 | cinco       |
  11. +------+-------------+
  12. 6 rows in set (0.00 sec)
  13.  
  14. mysql> SELECT id, descripcion FROM tabla ORDER BY IF(id = 0, 2, 1), id;
  15. +------+-------------+
  16. | id   | descripcion |
  17. +------+-------------+
  18. |    1 | uno         |
  19. |    2 | dos         |
  20. |    3 | tres        |
  21. |    4 | cuatro      |
  22. |    5 | cinco       |
  23. |    0 | cero        |
  24. +------+-------------+
  25. 6 rows in set (0.00 sec)

Haz la prueba y nos comentas.

Saludos
Leo.

Parece que funciona perfecto !! y con poca sintaxis....

Pero no se exactamente que significa ORDER BY IF(id = 0, 2, 1), id
¿ Me lo podrías explicar?

Mil gracias a ti y a todos los que responden !!