Ver Mensaje Individual
  #5 (permalink)  
Antiguo 19/07/2011, 05:09
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: 16 años, 9 meses
Puntos: 2658
Respuesta: Order By no me ordena, por que?

Mira, técnicamente debería ordenártelo bien, porque esta consulta:
Código SQL:
Ver original
  1. SELECT T1.*
  2. FROM ImptosCargo T1
  3. WHERE T1.TipoImptoCred = '" & TipoImpuesto & "'
  4. ORDER BY T1.Mes
así lo indica.
Sin embargo, el ORDER BY en concurrencia con el WHERE, éste tiene prioridad en el ordenamiento, por lo que el resultado puede ser diferente al esperado.

Este tipo de cosas están perfectamente documentadas en los Manual de Referencia, por ejemplo, el de MySQL: 7.2.10. Cómo optimiza MySQL ORDER BY. Otros DBMS tienen situaciones de este tipo (Oracle))

Una solución temporal sería poner todo esto como subconsulta que luego se ordena:
Código SQL:
Ver original
  1. SELECT *
  2. FROM
  3.     (SELECT *
  4.     FROM ImptosCargo
  5.     WHERE TipoImptoCred = '" & TipoImpuesto & "' ) T1
  6. ORDER BY Mes

Por otro lado, para estar seguros de lo que sucede en tu caso sería buena idea que postearas una captura del resultado de la consulta, sea en texto o en imagen. De ese modo podremos ver bien cómo está quedando la tabla resultado.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Última edición por gnzsoloyo; 19/07/2011 a las 05:33