SlideShare una empresa de Scribd logo
UNIVERSIDAD NACIONAL DEL
CALLAO
• CURSO: BASE DE DATOS
• DOCENTE: EDDIE MALCA
• ALUMNO: FRANCESCA S. ROJAS JIMENEZ
PRÁCTICA SQL
2
 CASO 1: Deportes
PERS (Personas) = {Dni, Nom, Sexo, Edad, Dir, Tel, Zona}
DEPO (Deportes) = {Codd, Nomd, Clase}
CLUB (Clubes) = {Codc, Nomc, Dir, Tel, Cat, Zona}
PRAC (Practican) = {Dni, Codd, Codc}
Ejercicio 2
a) Resuelva las consultas planteadas en SQL
3
 1. Obtener el nombre de las personas que practican (simultáneamente) los deportes D01, D22 y
D10 (códigos).
SELECT pers.nom
FROM pers
,prac
WHERE pres.dni = prac.dni
AND prac.codd IN ('D01', 'D22', 'D10')
4
 2. Obtener el nombre de las personas que no practican deportes en Ausonia.
SELECT pers.nom
FROM pers
,prac
,club
WHERE pres.dni = prac.dni
AND club.codc=prac.codc
and club.nomc!='Ausonia'
5
 3. Obtener el DNI de las personas que practican deportes en Ausonia o bien practican en la UVT.
SELECT pers.dni
FROM pers
,prac
,club
WHERE pres.dni = prac.dni
AND club.codc=prac.codc
and (club.nomc='Ausonia' or club.nomc='UVT')
6
 4. Obtener el código de los deportes que son practicados solamente por hombres.
Modelo 1:
SELECT depo.codd
FROM pers
,prac
,depo
WHERE pers.dni = prac.dni
AND depo.codd=prac.codd
and pers.sexo='M'
group by depo.codd
Modelo 2:
SELECT DISTINCT depo.codd
FROM pers
,prac
,depo
WHERE pers.dni = prac.dni
AND depo.codd =
prac.codd
AND pers.sexo = 'M'
Modelo 3:
SELECT depo.codd
FROM depo
WHERE 1 = 1
AND EXISTS (SELECT 1
FROM pers
,prac
WHERE pers.dni =
prac.dni
AND prac.codd =
depo.codd
AND ers.sexo = 'M')
7
 5. Obtener nombre y dirección de las personas que viven en la misma zona que Juan Pérez, DNI
20.498.425.
SELECT pers.nombre
,pers.dir
FROM pers
WHERE pres.zona = (SELECT pres.zona
FROM pers
WHERE pres.dni = '20.498.425')
8
 6. Obtener el nombre de las personas mayores que Ana García (DNI: 18.498.425). 7. Obtener el
nombre de las personas que practican en clubes que están ubicados en la misma zona en la que
ellos viven.
SELECT pers.nombre
FROM pers
WHERE pers.edad > (SELECT pres.edad
FROM pers
WHERE pres.dni = '18.498.425') --Ana
9
 7. Obtener el nombre de las personas que practican en clubes que están ubicados en la misma
zona en la que ellos viven.
SELECT pers.nombre
FROM pers
,prac
,club
WHERE pers.dni = prac.dni
AND club.codc = prac.codc
AND EXISTS (SELECT 1
FROM pers
,prac
WHERE pers.dni = prac.dni
AND pers.zona = club.zona)
10
 8. Obtener el nombre de las personas junto al nombre del deporte que práctica. Se deben incluir
todas las personas registradas más allá que no estén practicando ningún deporte.
SELECT pers.nom,depo.nomd
FROM pers
,prac
,depo
WHERE pres.dni = prac.dni(+)
and depo.codd=prac.codd
11
 9. Obtener el nombre de los deportes practicados en todos los clubes.
SELECT distinct depo.nomd
FROM club
,prac
,depo
WHERE club.codc = prac.codc
AND depo.codd = prac.codd
12
 10. Obtener los clubes (todos sus datos) en los que se practican todos los deportes de balón
(clase).
SELECT club.*
FROM club
,prac
,depo
WHERE club.codc = prac.codc
AND depo.codd = prac.codd
and depo.clase='Balon'
13
 11. Obtener las personas (todos sus datos personales) que practican todos los deportes.
SELECT pers.*
FROM pers
,prac
WHERE pres.dni = prac.dni
 12. Obtener el nombre de las personas que practican todos los deportes que se practican en el
Banco Hispano.
SELECT pers.nom
,depo.nomd
FROM pers
,prac
,club
WHERE pers.dni = prac.dni
AND club.codc = prac.codc
AND club.nomc = 'Banco Hispano'
14
b) Sobre el esquema de base de dato planteado en el Caso 1 - Deportes
enuncie las consultas en SQL para actualizarla:
 1. Inserte nuevas Personas (deportista) con los siguientes datos: < 14895399, Pérez Edgar, M, 35,
Hipólito Irigoyen 528, 4222935, Rawson > < 24835599, González Rosa, F, 50, Hipólito Irigoyen 528,
4229115, Rivadavia > < 34895399, Fernández Luis, M, 28, Hipólito Irigoyen 528, 4293538, Santa Lucia
> < 17895399, Ruiz Analía, F, 18, Hipólito Irigoyen 528, 4258912, Pósito >
INSERT INTO PERS (Dni, Nom, Sexo, Edad, Dir, Tel, Zona)
values (14895399, 'Pérez Edgar', 'M', 35, 'Hipólito Irigoyen 528', 4222935, 'Rawson'),
(24835599, 'González Rosa', ‘F', 50, 'Hipólito Irigoyen 528’, 4229115, 'Rivadavia'),
(34895399, 'Fernández Luis', 'M', 28, 'Hipólito Irigoyen 528', 4293538, ‘Santa Lucia'),
(17895399, 'Ruiz Analía', ‘F', 18, 'Hipólito Irigoyen 528', 4258912, ‘Pósito'),
COMMIT;
15
16
 2. Inserte el nuevo deporte con los siguientes datos: < d99 , Tenis , terrestre >
INSERT INTO DEPO (Codd, Nomd, Clase)
values (‘d99’, ‘Tenis', ‘terrestre‘)
COMMIT;
17
 3. Inserte el nuevo club con los siguientes datos: < c99, Universidad, 25 de Mayo, 4311425, cat,
Capital >
INSERT INTO CLUB (Codc, Nomc, Dir, Tel, Cat, Zona)
values (‘c99’, ‘Universidad', ’25 de Mayo‘, 4311425, ‘cat’. ‘Capital’)
COMMIT;
18
 4. Inserte la nueva tupla para practica con los siguientes datos: < 14895399, d99, c99 >
INSERT INTO PRAC (Dni, Codd, Codc)
values (148953399, ‘d99', ’c99’)
COMMIT;
 5. Actualice el teléfono del Club UVT por el número 4312548.
UPDATE club set
tel='654268‘
where nomc='UVT‘
COMMIT;
19
 6. Elimine el Deporte “Tenis”, controle si le permite realizar el borrado de la tupla.
DELETE FROM depo
WHERE nomd = 'Tenis‘
COMMIT;
20
c) Sobre el esquema de base de dato planteado en el Caso 1
- Deportes realice las siguientes vistas:
 1. Una Vista llamada Atletas que tenga los siguientes atributos dni, nombre, sexo, edad.
CREATE view Atletas_v as
SELECT Dni,
Nombre,
Sexo,
Edad
FROM PERS
21
 2. Una Vista llamada Futbolistas que tenga los siguientes atributos dni, nombre,
edad y tel.
CREATE view Futbolistas_v as
SELECT Dni,
Nombre,
Edad,
Tel
FROM PERS
22

Más contenido relacionado

PPTX
Installation guide for mysql in windows
DOCX
CQL - Cassandra commands Notes
PPTX
Core java complete ppt(note)
PDF
SQL Stored Procedures For My Library Project
PPTX
Java Constructor
PDF
Writing native bindings to node.js in C++
PPT
Normalization
PDF
[APJ] Common Table Expressions (CTEs) in SQL
 
Installation guide for mysql in windows
CQL - Cassandra commands Notes
Core java complete ppt(note)
SQL Stored Procedures For My Library Project
Java Constructor
Writing native bindings to node.js in C++
Normalization
[APJ] Common Table Expressions (CTEs) in SQL
 

Similar a Base de Datos - SQL Práctica (20)

PPTX
Trabajo final sql delia
PPTX
Ejercicios SQL
PPTX
Ejercicios sql malca
DOCX
Practica sql
PPTX
Jonathan
PDF
Ejericio2.pdf
PPTX
Hennerlint
PPTX
Anderson
PPTX
PDF
Laboratorio
DOC
Bd2 ejer02 joins y funciones_solucion
DOCX
Consultas de tablas con comando de SQL
PDF
Dokumen.site ejercicios resueltos-sqlpdf
PDF
Practica access
DOCX
Trabajo sistemas
PPTX
Tema5 sql - ql
PDF
Ejercicios sql
PDF
Sql ejercicios resueltos
PDF
PDF
Ejercicios sql
Trabajo final sql delia
Ejercicios SQL
Ejercicios sql malca
Practica sql
Jonathan
Ejericio2.pdf
Hennerlint
Anderson
Laboratorio
Bd2 ejer02 joins y funciones_solucion
Consultas de tablas con comando de SQL
Dokumen.site ejercicios resueltos-sqlpdf
Practica access
Trabajo sistemas
Tema5 sql - ql
Ejercicios sql
Sql ejercicios resueltos
Ejercicios sql
Publicidad

Último (20)

PPTX
Seminario de telecomunicaciones para ingeniería
PDF
Durabilidad del concreto en zonas costeras
PPTX
MARITIMO Y LESGILACION DEL MACO TRANSPORTE
PPT
PRIMEROS AUXILIOS EN EL SECTOR EMPRESARIAL
PPTX
Introducción al Diseño de Máquinas Metodos.pptx
PDF
Oficio SEC 293416 Comision Investigadora
PDF
Pensamiento Politico Siglo XXI Peru y Mundo.pdf
PDF
fulguracion-medicina-legal-418035-downloable-2634665.pdf lesiones por descarg...
PPTX
1 CONTAMINACION AMBIENTAL EN EL PLANETA.pptx
PPT
Sustancias Peligrosas de empresas para su correcto manejo
PDF
Copia de Presentación Propuesta de Marketing Corporativo Blanco y Negro.pdf
DOC
informacion acerca de la crianza tecnificada de cerdos
PDF
FIJA NUEVO TEXTO DE LA ORDENANZA GENERAL DE LA LEY GENERAL DE URBANISMO Y CON...
PPTX
Notificacion e investigación de incidentes y accidentes de trabajo.pptx
PPTX
MODULO 1.SEGURIDAD Y SALUD CONCEPTOS GENERALES.pptx
PDF
presentacion sobre los polimeros, como se conforman
PPT
TRABAJOS EN ALTURA PARA OBRAS DE INGENIERIA
PPTX
A8B08CED-D3D9-415C-B4A3-2A6CA6409A48.1.1Presentación Dirección 2022 unidade...
PPTX
Logging While Drilling Ingenieria Petrolera.pptx
PPTX
Software para la educación instituciones superiores
Seminario de telecomunicaciones para ingeniería
Durabilidad del concreto en zonas costeras
MARITIMO Y LESGILACION DEL MACO TRANSPORTE
PRIMEROS AUXILIOS EN EL SECTOR EMPRESARIAL
Introducción al Diseño de Máquinas Metodos.pptx
Oficio SEC 293416 Comision Investigadora
Pensamiento Politico Siglo XXI Peru y Mundo.pdf
fulguracion-medicina-legal-418035-downloable-2634665.pdf lesiones por descarg...
1 CONTAMINACION AMBIENTAL EN EL PLANETA.pptx
Sustancias Peligrosas de empresas para su correcto manejo
Copia de Presentación Propuesta de Marketing Corporativo Blanco y Negro.pdf
informacion acerca de la crianza tecnificada de cerdos
FIJA NUEVO TEXTO DE LA ORDENANZA GENERAL DE LA LEY GENERAL DE URBANISMO Y CON...
Notificacion e investigación de incidentes y accidentes de trabajo.pptx
MODULO 1.SEGURIDAD Y SALUD CONCEPTOS GENERALES.pptx
presentacion sobre los polimeros, como se conforman
TRABAJOS EN ALTURA PARA OBRAS DE INGENIERIA
A8B08CED-D3D9-415C-B4A3-2A6CA6409A48.1.1Presentación Dirección 2022 unidade...
Logging While Drilling Ingenieria Petrolera.pptx
Software para la educación instituciones superiores
Publicidad

Base de Datos - SQL Práctica

  • 1. UNIVERSIDAD NACIONAL DEL CALLAO • CURSO: BASE DE DATOS • DOCENTE: EDDIE MALCA • ALUMNO: FRANCESCA S. ROJAS JIMENEZ PRÁCTICA SQL
  • 2. 2  CASO 1: Deportes PERS (Personas) = {Dni, Nom, Sexo, Edad, Dir, Tel, Zona} DEPO (Deportes) = {Codd, Nomd, Clase} CLUB (Clubes) = {Codc, Nomc, Dir, Tel, Cat, Zona} PRAC (Practican) = {Dni, Codd, Codc} Ejercicio 2
  • 3. a) Resuelva las consultas planteadas en SQL 3  1. Obtener el nombre de las personas que practican (simultáneamente) los deportes D01, D22 y D10 (códigos). SELECT pers.nom FROM pers ,prac WHERE pres.dni = prac.dni AND prac.codd IN ('D01', 'D22', 'D10')
  • 4. 4  2. Obtener el nombre de las personas que no practican deportes en Ausonia. SELECT pers.nom FROM pers ,prac ,club WHERE pres.dni = prac.dni AND club.codc=prac.codc and club.nomc!='Ausonia'
  • 5. 5  3. Obtener el DNI de las personas que practican deportes en Ausonia o bien practican en la UVT. SELECT pers.dni FROM pers ,prac ,club WHERE pres.dni = prac.dni AND club.codc=prac.codc and (club.nomc='Ausonia' or club.nomc='UVT')
  • 6. 6  4. Obtener el código de los deportes que son practicados solamente por hombres. Modelo 1: SELECT depo.codd FROM pers ,prac ,depo WHERE pers.dni = prac.dni AND depo.codd=prac.codd and pers.sexo='M' group by depo.codd Modelo 2: SELECT DISTINCT depo.codd FROM pers ,prac ,depo WHERE pers.dni = prac.dni AND depo.codd = prac.codd AND pers.sexo = 'M' Modelo 3: SELECT depo.codd FROM depo WHERE 1 = 1 AND EXISTS (SELECT 1 FROM pers ,prac WHERE pers.dni = prac.dni AND prac.codd = depo.codd AND ers.sexo = 'M')
  • 7. 7  5. Obtener nombre y dirección de las personas que viven en la misma zona que Juan Pérez, DNI 20.498.425. SELECT pers.nombre ,pers.dir FROM pers WHERE pres.zona = (SELECT pres.zona FROM pers WHERE pres.dni = '20.498.425')
  • 8. 8  6. Obtener el nombre de las personas mayores que Ana García (DNI: 18.498.425). 7. Obtener el nombre de las personas que practican en clubes que están ubicados en la misma zona en la que ellos viven. SELECT pers.nombre FROM pers WHERE pers.edad > (SELECT pres.edad FROM pers WHERE pres.dni = '18.498.425') --Ana
  • 9. 9  7. Obtener el nombre de las personas que practican en clubes que están ubicados en la misma zona en la que ellos viven. SELECT pers.nombre FROM pers ,prac ,club WHERE pers.dni = prac.dni AND club.codc = prac.codc AND EXISTS (SELECT 1 FROM pers ,prac WHERE pers.dni = prac.dni AND pers.zona = club.zona)
  • 10. 10  8. Obtener el nombre de las personas junto al nombre del deporte que práctica. Se deben incluir todas las personas registradas más allá que no estén practicando ningún deporte. SELECT pers.nom,depo.nomd FROM pers ,prac ,depo WHERE pres.dni = prac.dni(+) and depo.codd=prac.codd
  • 11. 11  9. Obtener el nombre de los deportes practicados en todos los clubes. SELECT distinct depo.nomd FROM club ,prac ,depo WHERE club.codc = prac.codc AND depo.codd = prac.codd
  • 12. 12  10. Obtener los clubes (todos sus datos) en los que se practican todos los deportes de balón (clase). SELECT club.* FROM club ,prac ,depo WHERE club.codc = prac.codc AND depo.codd = prac.codd and depo.clase='Balon'
  • 13. 13  11. Obtener las personas (todos sus datos personales) que practican todos los deportes. SELECT pers.* FROM pers ,prac WHERE pres.dni = prac.dni
  • 14.  12. Obtener el nombre de las personas que practican todos los deportes que se practican en el Banco Hispano. SELECT pers.nom ,depo.nomd FROM pers ,prac ,club WHERE pers.dni = prac.dni AND club.codc = prac.codc AND club.nomc = 'Banco Hispano' 14
  • 15. b) Sobre el esquema de base de dato planteado en el Caso 1 - Deportes enuncie las consultas en SQL para actualizarla:  1. Inserte nuevas Personas (deportista) con los siguientes datos: < 14895399, Pérez Edgar, M, 35, Hipólito Irigoyen 528, 4222935, Rawson > < 24835599, González Rosa, F, 50, Hipólito Irigoyen 528, 4229115, Rivadavia > < 34895399, Fernández Luis, M, 28, Hipólito Irigoyen 528, 4293538, Santa Lucia > < 17895399, Ruiz Analía, F, 18, Hipólito Irigoyen 528, 4258912, Pósito > INSERT INTO PERS (Dni, Nom, Sexo, Edad, Dir, Tel, Zona) values (14895399, 'Pérez Edgar', 'M', 35, 'Hipólito Irigoyen 528', 4222935, 'Rawson'), (24835599, 'González Rosa', ‘F', 50, 'Hipólito Irigoyen 528’, 4229115, 'Rivadavia'), (34895399, 'Fernández Luis', 'M', 28, 'Hipólito Irigoyen 528', 4293538, ‘Santa Lucia'), (17895399, 'Ruiz Analía', ‘F', 18, 'Hipólito Irigoyen 528', 4258912, ‘Pósito'), COMMIT; 15
  • 16. 16  2. Inserte el nuevo deporte con los siguientes datos: < d99 , Tenis , terrestre > INSERT INTO DEPO (Codd, Nomd, Clase) values (‘d99’, ‘Tenis', ‘terrestre‘) COMMIT;
  • 17. 17  3. Inserte el nuevo club con los siguientes datos: < c99, Universidad, 25 de Mayo, 4311425, cat, Capital > INSERT INTO CLUB (Codc, Nomc, Dir, Tel, Cat, Zona) values (‘c99’, ‘Universidad', ’25 de Mayo‘, 4311425, ‘cat’. ‘Capital’) COMMIT;
  • 18. 18  4. Inserte la nueva tupla para practica con los siguientes datos: < 14895399, d99, c99 > INSERT INTO PRAC (Dni, Codd, Codc) values (148953399, ‘d99', ’c99’) COMMIT;
  • 19.  5. Actualice el teléfono del Club UVT por el número 4312548. UPDATE club set tel='654268‘ where nomc='UVT‘ COMMIT; 19
  • 20.  6. Elimine el Deporte “Tenis”, controle si le permite realizar el borrado de la tupla. DELETE FROM depo WHERE nomd = 'Tenis‘ COMMIT; 20
  • 21. c) Sobre el esquema de base de dato planteado en el Caso 1 - Deportes realice las siguientes vistas:  1. Una Vista llamada Atletas que tenga los siguientes atributos dni, nombre, sexo, edad. CREATE view Atletas_v as SELECT Dni, Nombre, Sexo, Edad FROM PERS 21
  • 22.  2. Una Vista llamada Futbolistas que tenga los siguientes atributos dni, nombre, edad y tel. CREATE view Futbolistas_v as SELECT Dni, Nombre, Edad, Tel FROM PERS 22