Ver Mensaje Individual
  #3 (permalink)  
Antiguo 11/01/2013, 00:42
Avatar de alvidales
alvidales
 
Fecha de Ingreso: febrero-2012
Mensajes: 108
Antigüedad: 12 años, 8 meses
Puntos: 11
Respuesta: extraer de una fecha de naciemiento edad solo año o solo mes o solo dia

Amigo espero te funcione esto, estaba aburrido y me puse a hacerlo, saludos.

Código:
#set @fechaNac = '2013-01-01';
#set @fechaNac = '2012-05-07';
set @fechaNac = '1985-05-07';

select case
	when ((YEAR(CURDATE())-YEAR(@fechaNac))-(RIGHT(CURDATE(),5)<RIGHT(@fechaNac,5)))>0
	then concat(((YEAR(CURDATE())-YEAR(@fechaNac))-(RIGHT(CURDATE(),5)<RIGHT(@fechaNac,5))), ' años')
	
	when ((MONTH(CURDATE())-MONTH(@fechaNac))-(RIGHT(CURDATE(),2)<RIGHT(@fechaNac,2)))<0
	then concat(((MONTH(CURDATE())-MONTH(@fechaNac))-(RIGHT(CURDATE(),2)<RIGHT(@fechaNac,2))) + 12, ' meses')
	
	when (DAY(CURDATE()-DAY(@fechaNac)))<31
	then concat((DAY(CURDATE()-DAY(@fechaNac))), ' días')
end AS dato;
lo puedes correr directamente en mysql.