Parte 3
Bd: Fechas tablas:
estudiante
materia
estmat
1. Total de estudiantes nacidos en los años 70.
2. Consultar a los estudiantes que tienen entre 16 y 20 años.
3. Consultar los nombres de los estudiantes que son mayores de 25 años.
4. Calcular la edad de cada estudiante.
6. Consultar las materias que tienen precio mayor a 300000 y sacar un mensaje que diga si pasa de 300000 cara de lo contrario económica.
7. Agregar el campo edad a la tabla estudiante, insertar las edades respectivas y si el estudiante pasa de 30 años sacar un mensaje que diga hombre mayor, de lo contrario joven en desarrollo.
8.Consultar las materias que tienen precio mayor a 200000 y menor igual a 300000, y sacar un mensaje que diga materia económica si esta entre 200000 y 300000 de lo contrario cara.
Análisis
1. Total de estudiantes nacidos en los años 70.
Sintaxis
select count(*) from estudiante where year(fechanacimiento) between 1970 and 1979;
2. Consultar a los estudiantes que tienen entre 16 y 20 años.
select * from estudiante where year (current_date()) - year(fechanacimiento) between '16' and '20' ;
3. Consultar los nombres de los estudiantes que son mayores de 25 años.
select nombre From estudiante Where Year(Current_date()) - year(fechanacimiento) > 25;
4. Calcular la edad de cada estudiante.
select carnet, Nombre, Year(Current_date()) - year(fechanacimiento) 'Edad' From estudiante;
6. Consultar las materias que tienen precio mayor a 300000 y sacar un mensaje que diga si pasa de 300000 cara de lo contrario económica.
select codigom, descripcion, valor, if(valor > 300000, 'Cara', 'Economica') As 'Categoria' from materia;
7. Agregar el campo edad a la tabla estudiante, insertar las edades respectivas y si el estudiante pasa de 30 años sacar un mensaje que diga hombre mayor, de lo contrario joven en desarrollo.
ALTER TABLE estudiante ADD Edad int NULL;
update estudiante set edad = Year(Current_date()) - year(fechanacimiento);
select carnet, Nombre, edad, if(edad > 30, 'hombre mayor', 'joven en desarrollo') As 'Tipo' from estudiante;
8.Consultar las materias que tienen precio mayor a 200000 y menor igual a 300000, y sacar un mensaje que diga materia económica si esta entre 200000 y 300000 de lo contrario cara.
select codigom, descripcion, valor, if(valor > 200000 and valor <= 300000, 'Economica', if(valor > 300000, 'Cara', 'Otro')) As 'Categoria' from materia;
Tablas Repaso 2
- cuantas mujeres tiene su nombre terminado en z
- total de personas nacidas en los años 70's se;
- listar las personas con edad entre 25 y 30 años
- cuantos hijos existen en el total de datos
- agrupar por numero de hijos
- cuantas personas tiene el nombre carlos
- total de mujeres menores o = de 22 años
- total de hombre mayores de 30 años que tengan mas de 1 hijo
- cuantas mujeres mayores de 25 años edad tiene entre 1 y 3 hijos
-mostrar la fecha del sistema.
- Visualizar la hora actual del sistema
Sintaxis
- cuantas mujeres tiene su nombre terminado en z
select count(*) from repaso2 where sexo= 'mujer' and nombre like '%z' ;
- total de personas nacidas en los años 70's se;
select count(*) from repaso2 where year(fechanacimiento) between 1970 and 1979;
- listar las personas con edad entre 25 y 30 años
select * from repaso2 where year (current_date()) - year(fechanacimiento) between '25' and '30' ;
- cuantos hijos existen en el total de datos
select sum(nrohijos) from repaso2;
- agrupar por numero de hijos
select nrohijos, count(*) padres from repaso2 group by nrohijos;
- cuantas personas tiene el nombre carlos
select count(*) from repaso2 where sexo= 'hombre' and nombre like 'carlos%' ;
- total de mujeres menores o = de 22 años
select count(*) from repaso2 where year (current_date) - year (fechanacimiento)<=22 and sexo='mujer';
- total de hombre mayores de 30 años que tengan mas de 1 hijo
select count(*) from repaso2 where year (current_date) - year (fechanacimiento)>30 and sexo='hombre';
- cuantas mujeres mayores de 25 años edad tiene entre 1 y 3 hijos
select count(*) from repaso2 where year (current_date) - year (fechanacimiento)>25 and sexo='mujer'and nrohijos between '1' and '3';
-mostrar la fecha del sistema.
select current_date();
- Visualizar la hora actual del sistema
select time (now()) as hora;
Estos link contienen el tee de las consultas y comandos utilizados de la base de datos
Este link contiene la base de datos