yo tbm las trabajo asi pero no las transformo a date... las manipulo como numeros...
si te das cuenta si unes AÑOS-MESES-DIAS en ese orden formas un numero entero que puedes comparar con facilidad ... ejemplo
fecha uno 2006-12-31 = 20061231
fecha dos 2006-11-20 = 20061120
si generas una resta o ver el mayor podrias identificar cual fecha es de referencia mas antigua que otra ej:
Código:
if (20061231 > 20061120 ) { print("fecha uno es mas cercna a fin de año que fecha dos");}
esto lo realizas con la funcion de javascript "substring"
ej:
Código:
var obtener_fecha = document.forms.frmdatos.txtfecha.value
transformando_fecha_a_numeros_enteros = parseFloat (obtener_fecha .substring(6, 10)+ obtener_fecha.substring(3, 5) + obtener_fecha.substring(0, 2));
asi rescato la fecha y la dejo como numero entero en un variable en javascript, esto sirve para comparacion y lo validaciones varias...... para unir nada mas pones + en javascript.
es base datos existe una funcion parecida.. que en realidad genera la misma opcion, asi podras ordenar por lo que desees respecto a los campos de la fecha.
pondre mi cogido para que lo veas...
la sintaxis es la siguiente
Código:
$strsql = "SELECT min_codigo, min_fecha_inicio, min_fecha_termino FROM int_minuta ";
$strsql.= " WHERE ".$intfecha_termino." >= CONCAT(SUBSTRING(min_fecha_inicio,7,4), SUBSTRING(min_fecha_inicio,4,2), SUBSTRING(min_fecha_inicio,1,2))";
$strsql.= " AND ".$intfecha_termino." <= CONCAT(SUBSTRING(min_fecha_termino,7,4), SUBSTRING(min_fecha_termino,4,2), SUBSTRING(min_fecha_termino,1,2))";
lo que hago ... mando una variable con la fecha ya cambiada a enteros.. luegos consulto en la base datos si es mayor o igual a un campo fecha que poseeo en mi tabla, ahi aplico la funcion SUBSTRING para selecionar de igual manera que con el javascript asi comparo dos numeros enteros como te explicaba. y con el CONCAT conkateno la consulta de valores para que sea igual en el oreden de la variable que estamos mandado del javascript.. recerda que es asi 20061231 yymmdd
espero te sirva de algo, una idea de como trabajar con eso... sino existe una funcion para cambiar valores en sql.. creo que es TO_CHAR o sino TO_DATE
investiga al respecto
Saludos,