SET lc_time_names = 'es_ES';
CREATE TABLE if not exists alumnos (
nombre VARCHAR(30),
apellidos VARCHAR(60),
f_nacimiento DATE);
INSERT INTO alumnos VALUES
("Juan","García","1969/03/27"),
("Perico","Mateo","1997/04/03"),
("Andrés","Rodriguez","1937/04/03"),
("María","Boluda","2010/01/01");
/* Crea una tabla de alumnos con los siguientes campos:
nombre, apellidos, fecha_nacimiento y luego saca un listado
con este formato:
Querid@ Luis García, su cumpleaño fue el día 27 (Jueves) de Marzo de 1969 y tiene usted 40000 días de vida si faltara a
los 100 años */
select CONCAT_WS(" ","Querid@\n\t",nombre,apellidos,
"su cumpleaños fue el día",
DAY(f_nacimiento),
DATE_FORMAT(f_nacimiento,
"(%W) de %M de %Y \nY TIENE USTED:"),
DATEDIFF(NOW(),f_nacimiento),"días\ny le quedan",
datediff(DATE_ADD(f_nacimiento,INTERVAL 100 YEAR),
NOW()),"días para llegar a los 100 años") AS aa
FROM alumnos;
/* listado de alumnos con su edad, en la última
columna debe aparecer si es mayor o menor de edad */
SET @me:=18;
SET @nom := "";
SELECT a.f_nacimiento,
DATEDIFF(NOW(),f_nacimiento)/365.25 EDAD,
@nom := CONCAT_WS(" ",a.nombre, a.apellidos),
if(DATEDIFF(NOW(),a.f_nacimiento)/365.25>=@me,
upper(@nom),
@nom) nom,
if(DATEDIFF(NOW(),a.f_nacimiento)/365.25>=@me,
"Mayor edad","Menor edad") control
FROM alumnos a;