0% encontró este documento útil (0 votos)
8 vistas5 páginas

Consultas SQL Básicas en PostgreSQL

Este documento presenta un práctico sobre consultas SQL simples utilizando dos esquemas de bases de datos: uno de voluntarios y otro de películas. Incluye 17 consultas SQL con instrucciones select sobre diferentes tablas y campos de ambos esquemas, como seleccionar instituciones que sean fundaciones, mostrar datos de empleados con cierta tarea, contar películas por idioma, y más. También incluye diagramas de entidad-relación de los dos esquemas y referencias bibliográficas sobre documentación de PostgreSQL.

Cargado por

U- Tropuz
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
8 vistas5 páginas

Consultas SQL Básicas en PostgreSQL

Este documento presenta un práctico sobre consultas SQL simples utilizando dos esquemas de bases de datos: uno de voluntarios y otro de películas. Incluye 17 consultas SQL con instrucciones select sobre diferentes tablas y campos de ambos esquemas, como seleccionar instituciones que sean fundaciones, mostrar datos de empleados con cierta tarea, contar películas por idioma, y más. También incluye diagramas de entidad-relación de los dos esquemas y referencias bibliográficas sobre documentación de PostgreSQL.

Cargado por

U- Tropuz
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd

[Link].

Exactas-UNICEN Práctico N° 4 Parte 1 Cursada 2023


Consultas SQL - Consultas Simples

Consulta sobre una tabla

Considere los esquemas de las bases de datos de Voluntarios


(unc_esq_voluntarios) y de Películas (unc_esq_peliculas)
cuyos diagramas se muestran en la Figura 1 y 2 respectivamente.

La base de datos de Voluntarios representa la información


de personas voluntarias que trabajan para instituciones
realizando determinadas tareas. De las instituciones se
conoce su dirección y el país y continente al cual
pertenecen. De cada voluntario se conoce su voluntario
coordinador y las tareas e instituciones que ha realizado a
lo largo de su historial.

La base de datos de Películas mantiene información de un centro de distribución de las películas


que comercializa, los distribuidores y las entregas que deben realizar o ha realizado a cada video-
club.
Se incluyen datos de la empresa productora de cada película, los distribuidores de las mismas
(clasificados como nacionales o internacionales) y además los empleados que trabajan para cada
distribuidor, las tareas a realizar y a qué departamento pertenecen.

Bibliografía recomendada: Documentacion PostgreSQL a consultar: 7. Queries


[Link]

Identifique el esquema, la tabla y resuelva las siguientes consultas SQL:

1. Seleccione el identificador y nombre de todas las instituciones que son Fundaciones.(V)

select id_institucion, nombre_institucion


from unc_esq_voluntario.institucion
where nombre_institucion LIKE 'FUNDACION%'

2. Seleccione el identificador de distribuidor, identificador de departamento y nombre de todos


los departamentos.(P)

select id_distribuidor, id_departamento


from unc_esq_peliculas.departamento

3. Muestre el nombre, apellido y el teléfono de todos los empleados cuyo id_tarea sea 7231,
ordenados por apellido y nombre.(P)

select nombre, apellido, telefono


from unc_esq_peliculas.empleado
where id_tarea = '7231'
order by apellido asc, nombre asc

4. Muestre el apellido e identificador de todos los empleados que no cobran porcentaje de


comisión.(P)

1
[Link]-UNICEN Práctico N° 4 Parte 1 Cursada 2023
Consultas SQL - Consultas Simples

select apellido, id_empleado


from unc_esq_peliculas.empleado
where porc_comision is null

5. Muestre el apellido y el identificador de la tarea de todos los voluntarios que no tienen


coordinador.(V)

select apellido, id_tarea


from unc_esq_voluntario.voluntario
where id_coordinador is NULL

6. Muestre los datos de los distribuidores internacionales que no tienen registrado teléfono.
(P)

select *
from unc_esq_peliculas.distribuidor
where telefono is null

7. Muestre los apellidos, nombres y mails de los empleados con cuentas de gmail y cuyo
sueldo sea superior a $ 1000. (P)

select apellido, nombre, e_mail, sueldo


from unc_esq_peliculas.empleado
where e_mail like '%@gmail%' and sueldo > 1000

8. Seleccione los diferentes identificadores de tareas que se utilizan en la tabla empleado. (P)

select id_tarea
from unc_esq_peliculas.empleado

9. Muestre el apellido, nombre y mail de todos los voluntarios cuyo teléfono comienza con
+51. Coloque el encabezado de las columnas de los títulos 'Apellido y Nombre' y 'Dirección
de mail'. (V)

select apellido || ', ' || nombre AS "APELLIDO Y NOMBRE", e_mail as "DIRECCION DE MAIL"
from unc_esq_voluntario.voluntario
where telefono like '+51%'

10. Hacer un listado de los cumpleaños de todos los empleados donde se muestre el nombre y
el apellido (concatenados y separados por una coma) y su fecha de cumpleaños (solo el
día y el mes), ordenado de acuerdo al mes y día de cumpleaños en forma ascendente. (P)

select nombre || ', ' || apellido as "Nombre y Apellido",


extract(DAY FROM fecha_nacimiento) || ' - ' ||
extract(MONTH FROM fecha_nacimiento) AS "Dia - Mes"
from unc_esq_peliculas.empleado as e
order by extract(MONTH FROM fecha_nacimiento) asc,
extract(DAY FROM fecha_nacimiento) asc;

2
[Link]-UNICEN Práctico N° 4 Parte 1 Cursada 2023
Consultas SQL - Consultas Simples

11. Recupere la cantidad mínima, máxima y promedio de horas aportadas por los voluntarios
nacidos desde 1990. (V)

select max(horas_aportadas) as "MAXIMO",


min(horas_aportadas) as "MINIMO",
avg(horas_aportadas) as "PROMEDIO"
from unc_esq_voluntario.voluntario
where extract(YEAR FROM fecha_nacimiento) >= 1990;

12. Listar la cantidad de películas que hay por cada idioma. (P)

select count(*) Cantidad, idioma


from unc_esq_peliculas.pelicula
group by idioma
order by idioma;

13. Calcular la cantidad de empleados por departamento. (P)

select count(*) Cantidad, id_departamento


from unc_esq_peliculas.empleado
group by id_departamento
order by Cantidad;

14. Mostrar los códigos de películas que han recibido entre 3 y 5 entregas. (veces entregadas,
NO cantidad de películas entregadas).

select codigo_pelicula as "PELICULA", cantidad


from unc_esq_peliculas.renglon_entrega
where cantidad >= 3 and cantidad <=5;

15. ¿Cuántos cumpleaños de voluntarios hay cada mes?

select count(*) Cantidad, extract(month from fecha_nacimiento) as "Mes"


from unc_esq_voluntario.voluntario
group by "Mes"
order by "Mes" asc;

RESULTADO: 43

16. ¿Cuáles son las 2 instituciones que más voluntarios tienen?

select count(*) Cantidad_Voluntarios, id_institucion


from unc_esq_voluntario.voluntario
group by id_institucion
order by Cantidad_Voluntarios desc
limit 2;

17. ¿Cuáles son los id de ciudades que tienen más de un departamento?

3
[Link]-UNICEN Práctico N° 4 Parte 1 Cursada 2023
Consultas SQL - Consultas Simples

FIGURA 1

FIGURA 2

4
[Link]-UNICEN Práctico N° 4 Parte 1 Cursada 2023
Consultas SQL - Consultas Simples

También podría gustarte