EJERCICIOS SELECT
1. Mostrar todas las regiones, ordenar los datos por nombre de región.
SELECT *
FROM regiones
ORDER by cod_ regiones
2. Mostrar los datos del ciudadano con DPI 1012188851615.
SELECT *
FROM Ciudadanos
WHERE dpi=1012188851615;
3.Obtener DPI, nombre, apellido, dirección, teléfono móvil, correo electrónico de los ciudadanos
que nacieron el municipio con código 101, ordenar los datos por apellido.
SELECT nombre, apellido, direccion, tel_movil, email
FROM ciudadanos
WHERE lugar_nacimiento=101
ORDER by apellido
4 Mostrar a todos los ciudadanos que nacieron en el municipio con código 2217.
SELECT *
FROM ciudadanos
WHERE lugar_nacimiento=2217
5 Mostrar únicamente DPI, nombre, apellido, teléfono móvil de los ciudadanos que nacieron en
municipios del departamento de Guatemala.
SELECT nombre, apellido, direccion, tel_movil
FROM ciudadanos
WHERE lugar_nacimiento=101;
6 Listar todos los municipios correspondientes al departamento con código 1
SELECT*
FROM municipios
WHERE cod_depto=1;
7 Mostrar todos los datos de los departamentos pertenecientes a la región con código 5.
SELECT*
FROM departamentos
WHERE cod_region=5;
8 Mostrar los datos de los ciudadanos que poseen nivel académico Magister (código 7)
SELECT*
FROM ciudadanos
WHERE cod_nivel_acad=7;
9 Mostrar DPI, nombre completo, dirección, correo electrónico y teléfono móvil de todos los
ciudadanos del municipio de Guatemala (101) y con nivel académico 6, 7 u 8.
SELECT dpi, nombre,apellido, direccion, email, tel_movil
FROM ciudadanos
WHERE lugar_nacimiento=101 and cod_nivel_acad=6 or cod_nivel_acad=7 or cod_nivel_acad=8;
10 Listar a los ciudadanos que nacieron después del 07 de marzo de 1998.
SELECT *
from ciudadanos
WHERE fechanac >19980307
11 Obtener la cantidad de ciudadanos existentes. (investigue como utilizar count)
SELECT count (nombre)
FROM ciudadanos
registros/3164
12 Mostrar a los ciudadanos que nacieron entre el año 1996 y 1998 (investigue la forma de utilizar
únicamente el año de la fecha)
SELECT *
from ciudadanos
WHERE YEAR(fechanac)>=1996 AND YEAR(fechanac)<=1998;
EJERCICIOS UNIÓN DE TABLAS
1. Mostrar dpi, nombre, apellido, dirección y teléfonos de los ciudadanos que nacieron en el municipio de Villa Canales.
SELECT ciudadanos.dpi, ciudadanos.apellido,ciudadanos.direccion, ciudadanos.tel_casa
FROM ciudadanos INNER JOIN municipios
ON ciudadanos.lugar_nacimiento=municipios.cod_muni
WHERE municipios.nombre="Villa Canales"
total:51
2. Listar todos los municipios del departamento de Guatemala.
SELECT municipios.*, departamentos.nombre
FROM departamentos INNER JOIN municipios
ON departamentos.cod_depto=municipios.cod_depto
WHERE departamentos.nombre="Guatemala"
total: 17
3. Listar los datos de todas las personas que tienen como nivel académico Diversificado.
SELECT ciudadanos.*
FROM ciudadanos INNER JOIN nivelesacademicos
ON ciudadanos.cod_nivel_acad=nivelesacademicos.cod_nivel_acad
WHERE ciudadanos.cod_nivel_acad="4"
TOTAL 369
4. Localizar dpi, nombre completo (apellido, nombre) de los ciudadanos que pertenecen al municipio El Adelanto.
SELECT ciudadanos.dpi, CONCAT(ciudadanos.nombre," ", ciudadanos.apellido) as nombreCompleto
FROM ciudadanos INNER JOIN municipios
ON ciudadanos.lugar_nacimiento=municipios.cod_muni
WHERE municipios.nombre="El Adelanto"
total:6
5. Mostrar dpi, nombre completo (apellido, nombre), email, teléfono, fecha de nacimiento de los ciudadanos que
nacieron en el departamento de Petén.
SELECT ciudadanos.dpi, CONCAT(ciudadanos.nombre," ", ciudadanos.apellido) as nombreCompleto, email, tel_casa,fechanac
FROM ciudadanos INNER JOIN (municipios INNER JOIN departamentos
ON municipios.cod_depto = departamentos.cod_depto)
ON ciudadanos.lugar_nacimiento = municipios.cod_muni
WHERE departamentos.nombre="Peten"
total 85.
6. Mostrar los datos de todos los ciudadanos que nacieron en el departamento de Quetzaltenango y que son
mayores de edad.
SELECT ciudadanos.*
FROM ciudadanos INNER JOIN (municipios INNER JOIN departamentos
ON municipios.cod_depto = departamentos.cod_depto)
ON ciudadanos.lugar_nacimiento = municipios.cod_muni
WHERE YEAR(fechanac)<2000 and="" departamentos.nombre="quetzaltenango" font="">2000>
total :182
/////12. Eliminar a todos los ciudadanos que nacieron en el municipio 101 y que tienen fecha de
nacimiento menor a 1980.
DELETE FROM ciudadanos
WHERE YEAR(fechanac)<1980 and="" lugar_nacimiento="101;</font">1980>
7. Listar todos los municipios y el nombre del departamento al que pertenecen, de la región Central.
SELECT municipios.nombre, departamentos.nombre.regiones.nombre
FROM municipios JOIN departamentos ON municipios.cod_depto = departamentos.cod_depto
JOIN regiones ON regiones.cod_region=departamentos.cod_region
WHERE regiones.nombre="Central"
total/24
8. Listar todos los ciudadanos menores de edad que pertenecen a la región Norte.
SELECT ciudadanos.*,regiones.nombre
FROM ciudadanos JOIN municipios ON ciudadanos.lugar_nacimiento = municipios.cod_muni
JOIN departamentos ON municipios.cod_depto=departamentos.cod_depto
JOIN regiones ON departamentos.cod_region=regiones.cod_region
WHERE YEAR (ciudadanos.fechanac)>=2001 AND regiones.nombre="Norte";
r/1
9. Localizar a los datos de todos los ciudadanos con el nivel académico Tecnico(a), del departamento de Guatemala.
SELECT ciudadanos.nombre,nivelesacademicos.nombre, departamentos.nombre
FROM ciudadanos JOIN nivelesacademicos ON ciudadanos.cod_nivel_acad=nivelesacademicos.cod_nivel_acad
JOIN municipios ON ciudadanos.lugar_nacimiento=municipios.cod_muni
JOIN departamentos ON municipios.cod_depto=departamentos.cod_depto
WHERE nivelesacademicos.nombre="Tecnico(a)" AND departamentos.nombre="Guatemala"
r/24
10. Localizar dpi, nombre completo (apellido, nombre), correo electrónico y teléfono, de los ciudadanos que
pertenecen a la región Sur Oriental y que poseen el nivel académico de Doctor.
SELECT ciudadanos.dpi, CONCAT(ciudadanos.nombre," ", ciudadanos.apellido) as nombreCompleto, email, tel_casa, regiones.nombre as region
FROM ciudadanos JOIN nivelesacademicos ON ciudadanos.cod_nivel_acad=nivelesacademicos.cod_nivel_acad
JOIN municipios ON ciudadanos.lugar_nacimiento=municipios.cod_muni
JOIN departamentos ON municipios.cod_depto=departamentos.cod_depto
JOIN regiones ON departamentos.cod_region=regiones.cod_region
WHERE nivelesacademicos.nombre="Doctor" and regiones.nombre="SurOriental"
EJERCICIOS DML
EJERCICIOS DML
1. Agregar un nuevo Ciudadano, los datos son los siguientes:
INSERT ciudadanos ()
insert into regiones(cod_region, nombre, descripcion),
VALUES (99,”inventada”,”regionde ejemplo para insert”);
DPI 2283761300101
apellido zoila nue
nombre vaciuda dana
direccion 1 calle 1-11 zona 1
telefono casa 23234545
tel movil 56567878
emaild zoilavd@gmail.com
fecha nac 01/01/1995
codigo nivel academico 5
lugar de nacimiento(codigo del municipio) 101
INSERT INTO ciudadanos(dpi, apellido, nombre, direccion, tel_casa, tel_movil, email, fechanac, cod_nivel_acad, lugar_nacimiento)
VALUES(2283761300101, "zoila nue", "vaciuda dana","1calle 1-11 zona 1" , 23234545, 56567878, "zoilavd@gmail.com",19950101,5,101);
2. Agregar una nueva región, invente los datos.
cod region-10
nombre. altiplano
descriptionc region IX
INSERT INTO regiones (cod_region,nombre,descripcion)
VALUES (10,"altiplano","region IX");
VALUES (10,"altiplano","region IX");
3. Agregar un nuevo departamento para la región inventada.
cod depto 26
nombre=APHA 1
cod region=10
insert INTO departamentos(cod_depto, nombre, cod_region)
VALUES(26, "ALPHA 1",10);
4. Agregar un nuevo municipio en el departamento creado en el inciso anterior.
insert INTO municipios(cod_muni,nombre,cod_depto)
VALUES(001, "BETA 01", 26);
select *
from municipios
where cod_depto=26
5. Agregar un nuevo nivel académico, invente los datos.
INSERT INTO nivelesacademicos(cod_nivel_acad,nombre,descripcion)
VALUES(11,"genius", "AI");
6. Cambiar la dirección y el teléfono para el ciudadano con el DPI 2283761300101, los
nuevos
datos son:
Dirección: 7ma. calle 7-77 zona 7
Teléfono de casa: 22224444
UPDATE ciudadanos
SET direccion="7ma. calle 7-77 zona 7", tel_casa=22224444
WHERE dpi=2283761300101;
7. Modificar el correo electrónico para el ciudadano con el DPI 4455667780105 este debe ser
UPDATE ciudadanos
SET email="zoyelnuevo@gmail.com"
WHERE dpi=2283761300101;
8. Modificar Apellido, dirección, teléfono de casa, teléfono móvil y fecha de nacimiento de algúnciudadano existente, invente todos los datos.
UPDATE ciudadanos
SET email="zoyelnuevo@gmail.com"
WHERE dpi=2283761300101;
2725953382209
UPDATE ciudadanos
SET direccion="19 avenida 1-11 zona 1", tel_casa=22225555, fechanac=19940218
WHERE dpi=2725953382209;
9. Eliminar el nivel académico inventado.
DELETE FROM nivelesacademicos
WHERE cod_nivel_acad=11;
10. Eliminar todos los ciudadanos que nacieron en el municipio con el código 2217
DELETE FROM ciudadanos
WHERE lugar_nacimiento=2217;
R//6
11. Eliminar al ciudadano con DPI 2283761300101
DELETE FROM ciudadanos
WHERE dpi=2283761300101;
12. Eliminar a todos los ciudadanos que nacieron en el municipio 101 y que tienen fecha de
nacimiento menor a 1980.
DELETE FROM ciudadanos
WHERE YEAR(fechanac)<1980 AND lugar_nacimiento=101;
R/29
13. Eliminar todos los departamentos de la región no. 7
DELETE FROM departamentos
WHERE cod_region=7;
R/2
14. Eliminar a los ciudadanos con teléfono móvil 33734648 y teléfono de casa 21243830
DELETE FROM ciudadanos
WHERE tel_casa=21243830 AND tel_movil=33734648;
15. Agregar nombre, teléfono de casa, teléfono móvil, código de nivel académico, código de
municipio y dpi para un ciudadano. (invente los datos)
DPI---------------------2283761300101
nombre vaciuda dana
telefono casa 23234545
tel movil 56567878
codigo nivel academico 5
lugar de nacimiento(codigo del municipio) 101
INSERT INTO ciudadanos(dpi, nombre, tel_casa, tel_movil, cod_nivel_acad,lugar_nacimiento)
VALUES(2283761300101, "vaciuda dana", , 23234545, 56567878,19950101,5,101);
No hay comentarios:
Publicar un comentario