Ver Mensaje Individual
  #2 (permalink)  
Antiguo 08/09/2006, 22:06
GikaJavi
 
Fecha de Ingreso: agosto-2006
Mensajes: 121
Antigüedad: 17 años, 9 meses
Puntos: 0
Utiliza la función de MySQL datediff(). Datediff toma como argumentos un par de fechas y realiza la diferencia devolviendo los días que se llevan. Entonces datediff('2006-09-09','2005-09-09') devuelve 365. Prueba un SELECT datediff('2006-09-09', '2007-09-09') en tu consola o front-end de MySQL para corroborarlo.

Como dices que empiezas con todo esto te pongo un ejemplo freak:

Supongamos que somos responsables de la Base de datos del último mundial de fútbol de la FIFA (he dicho que era freak). Una de nuestras tablas se ocupa de almacenar los partidos del torneo usando los siguientes campos:

IdSeleccion1, IdSeleccion2, Fecha, ...

deberían aparecer otros campos tales como el resultado, ... pero no nos interesan ahora mismo porque lo que quermos saber es: ¿cuántos días transcurrieron desde el primer partido de la selección española (con Id 34) hasta que la misma fue eliminada de la competición? Pues lo podríamos saber con esta sentencia SQL:

SELECT datediff(max(Fecha), min(Fecha)) FROM Partidos WHERE IdSeleccion1='34' OR IdSeleccion2='34'

Y tu script PHP podría ser algo parecido a esto:

Código PHP:
// Conectas a MySQL y seleccionas tu BD (supongo que ya sabes hacerlo)
// ..
list($Dias) = mysql_fetch_row(mysql_query ("SELECT datediff(max(Fecha), min(Fecha)) FROM Partidos WHERE IdSeleccion1='34' OR IdSeleccion2='34'"));
echo 
"España duró $Dias días en el mundial"
P.S.: Siempre nos quedará la de baloncesto...

Última edición por GikaJavi; 08/09/2006 a las 22:21