Tema: Sobre fechas
Ver Mensaje Individual
  #4 (permalink)  
Antiguo 10/03/2014, 06:20
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, 5 meses
Puntos: 2658
Respuesta: Sobre fechas

Cita:
Iniciado por baldaweb Ver Mensaje
Solucionado:

en order by tengo que poner:

STR_TO_DATE( fecha_venta, '%d/%m/%Y' ) asc
Eso no es una solución, disculpa que te lo diga. Es un parche.
Va a funcionar, si, pero generará una baja de performance que se irá notando más y más a medida que aumenten los datos, o en la medida que necesites más consultas con la fecha como componente.
Es preferible resolver el problema desde el principio, y listo.

Para solucioanrlo lo más simple es primero hacer un ajuste del contenido de las fechas:
Código MySQL:
Ver original
  1. UPDATE ventas
  2. SET fecha_venta = DATE_FORMAT(STR_TO_DATE( fecha_venta,  '%d/%m/%Y' ) , '%Y-%m-%d');

y luego corregir ell tipo de columna:
Código MySQL:
Ver original
  1. ALTER TABLE ventas MODIFY COLUMN fecha_venta fecha_venta DATE;

Nota: Antes de hacer esto, haz una copia dfe la tabla con todo su contenido y realiza la prueba en la copia.
Y aún así, antes de implementarlo, realiza un backup completo.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)