Comparación de fechas con mysql

Imagen de thumbulu

Tema: 

Hola que tal amigos, en esta ocación quisiera saber si me pueden echar una mano en este particular. les indico mi duda.

Tengo una taba donde almaceno una fecha y esta asi dd/mm/aaaa, necesito mostrar los registros entre determindas fechas f1 y f2
he intentado varias opciones como format_date entre otras. necesito algo asi


SELECT * FROM `usuarios` WHERE fecha_ingreso BETWEEN '01/10/2009' AND '31/10/2009';

Pero no me da el resultado que deseo de esa forma, no estoy seguro si el formato de la base de datos influya. gracias por cualquier sugerencia

Comentarios

En MySQL las fechas se tratan

Imagen de idanny

En MySQL las fechas se tratan en formato internacional AAAA-MM-DD, que es un formato muy recomendable para cualquier aplicación porque cuenta con 2 ventajas importantes: es inambiguo porque al tener el año primero no cabe duda de cuál es el día (por el contrario 03/05/2009 es ambiguo en el mundo), y está ordenado de la misma forma que ordenamos los números (la cifra más significativa primero), lo cual tiene varias ventajas y una de ellas es que puede ser ordenada alfabéticamente.

Lo que nunca debes hacer es almacenar las fechas en otro formato porque MySQL no lo interpretará como tal, y cosas como BETWEEN o las operaciones con fechas no funcionarán. Siempre debes almacenar las fechas en campos DATE (o TIMESTAMP/DATETIME) y convertir, si realmente es tan necesario, antes de mostrar y después de leer del usuario.

Para convertir fechas de otros tipos a fechas en formato internacional puedes utilizar la función STR_TO_DATE, y para hacerlo a la inversa, la función DATE_FORMAT.

(,")... Se Feliz ... c",)