Professional Documents
Culture Documents
Trabajo Prctico N 4
SQL
Ingeniera en Informtica
GESTION DE DATOS
TRABAJO PRACTICO N 4
TEMA: Manejo
de SQL
OBJETIVOS:
9 Emplear comandos de SQL para definir y manipular datos.
9 Realizar consultas mediante comandos de SQL.
9 Trabajar en forma grupal, incentivando el intercambio de ideas, la puesta en comn y la
elaboracin grupal.
Conceptos a tener en claro: comandos de manipulacin de datos, comandos de definicin de
datos, comando de control de datos. ndices. Vistas.
DOCENTES:
Ao 2008
U.N.Ca.
Gestin de Datos 2008
Trabajo Prctico N 3
MANEJO DE SQL
PRIMERA PARTE
EJERCICIOS RESUELTOS
EJERCICIO N1:
Dadas las tablas del Problema Resuelto n1 del Trabajo Prctico n1 (Problemas de Lemas y Sublemas) con los valores establecidos en el Trabajo Prctico n2, resolver las consultas n3, 4 y 5 en SQL.
LEMA
numero_lema #
denominacion
SUBLEMAS
numero_sublema #
denominacion
CANDIDATO
dni #
apellido_nombres
MESAS_VOTACION
numero_mesa #
tipo
nombre_apoder
direccion
ubicacion
CAND_SUBLEMAS
dni #
numero_sublema #
nombre_apoderado
localidad
direccion
categora
VOTOS_SUBLEMAS
numero_mesa #
numero_sublema #
direccion_sede
direccion_sede
fecha_nacimiento
nro_
empradonados
caracter
fecha_personer
nro_
votos_
votantes blancos
votos_
nulos
votos_
recurridos
orden
votos_legislador
votos_concejal
LEMA_SUBLEMAS
numero_lema #
numero_sublema #
Consulta n 1: Listar nmero de mesa, tipo, nombre de la escuela o reparticin, direccin, que haya registrado
en el escrutinio que no tengan votos nulos, blancos o recurridos, ordenados por nmero de mesa en forma descendente.
SELECT Numero_Mesa Nmero de Mesa, Tipo Tipo, Ubicacin Nombre Escuela o Reparticin, Direcin Direccin
FROM Mesas_Votacin
WHERE Votos_Blanco = 0 AND Nulos = 0 AND Votos_Recurridos = 0
ORDER BY Numero_Mesa DESC
Tabla resultante:
Nmero deMesa
Tipo
Direccion
Fem
Escuela 9 de Julio
Catamarca 112
Masc
Univ. Tecnologica
Rivadavia 1050
Jefe de Ctedra: Lic. Soledad Bustos Aguiar Ayudantes Diplomados: Lic. Daniela Lobos Anfuso, Lic. Manuel Baquinzay
gestiondedatos.unca@gmail.com
U.N.Ca.
Gestin de Datos 2008
Trabajo Prctico N 3
MANEJO DE SQL
Consulta n 2: Listar el nmero de lema de lema, denominacin del Lema, direccin de la sede, fecha de otorgamiento de la personera poltica, nombre del apoderado, y cantidad de sublemas presentados, de aquellos que posean ms de tres sublemas presentados para la categora concejal.
SELECT LEMA.numero_lema Nmero de Lema, LEMA.denominacin, Denominacin, LEMA.direccin Direccin, LEMA.fecha_personer Fecha Pers. Pol., LEMA.nombre_apoder Apoderado, COUNT (*) Cantidad de Sublemas
FROM LEMAS , SUBLEMAS, CAND_SUBLEMA
WHERE LEMA.numero_lema = SUBLEMA.numero_lema
AND SUBLEMA.numero_sublema = CAN_SUBLEMA.numero_sublema
AND CAND_SUBLEMA.categora = consejal
GROUP BY L.Nmero_Lema
HAVING COUNT (*) > 3;
Tabla resultante:
Nmero de
Lema
Denominacin
Direccin
Fecha
Pers. Pol
Apoderado
Cantidad de
Sublemas
21
Rivadavia 150
10/02/1971
Antonio Guerrero
35
Fuerza Republicana
Laprida 843
11/09/1991
Pablo Calvetti
Consulta n 3: Listar la cantidad de votos totales para el Departamento Capital obtenidos por cada sublema del
lema Fuerza Republicana, discriminando las categoras de concejales y legisladores, indicando nmero de sublema
y denominacin del mismo.SELECT VOTOS_SUBLEMA.numero_sublema Nmero de Sublema, SUBLEMAS.denominacin,
Denominacin, SUM(VOTOS_SUBLEMA.votos_legislador) Votos Legislador, SUM
(VOTOS_SUBLEMAS.votos_concejal) Votos Concejal
FROM SUBLEMAS, VOTOS_SUBLEMA, LEMAS
WHERE VOTOS_SUBLEMA.numero_sublema = SUBLEMAS.numero_sublema
AND LEMAS.numero_lema = SUBLEMAS.numero_lema
AND LEMAS.denominacin = Fuerza Republicana
GROUP BY VOTOS_SUBLEMA.numero_sublema;
Tabla Resultante:
Nmero de Lema
Denominacin
Votos Legislador
Votos Concejal
2001
2002
2003
2004
96
90
112
122
93
92
107
125
Jefe de Ctedra: Lic. Soledad Bustos Aguiar Ayudantes Diplomados: Lic. Daniela Lobos Anfuso, Lic. Manuel Baquinzay
gestiondedatos.unca@gmail.com
U.N.Ca.
Gestin de Datos 2008
Trabajo Prctico N 3
MANEJO DE SQL
EJERCICIO N 2:
A partir de las tablas del Problema Resuelto n2 del Trabajo Prctico n1 (Problema del centro de cmputos) con
los valores establecidos en el Trabajo Prctico n2, resolver las consultas a, b y c, en SQL.
EMPLEADO
dni #
nombre_apellido
PASANTE
dni #
universidad
Titulo
carrera
domicilio
telefono
fecha_inicio_pasantia
area
fecha_ingreso_computos
fecha_fin_pasantia
EMPLEADO_REP
dni #
titulo
PEDIDOS
numero_pedido #
tarea_solicitada
fecha_pedido
ANALISIS
numero_pedido #
dni #
fecha_inicio_analisis
APLICACIONES
numero_pedido #
dni #
fecha_inicio_
aplicacion
area
fecha_fin_analisis
fecha_fin_
aplicacion
lenguaje_
programacion
nom_apellido_responsable
fecha_pase_
programacion
descripcion
descripcion_aplicacion
Consulta n 1: Listar el nombre y apellido de los empleados que realizaron el anlisis documentacin del
Sistema de Intimaciones. Grandes Contrib. DGR - Tucumn y que tambin hayan realizado el anlisis documentacin del Sistema Gral. de Mesa de Entradas.
SELECT EMPLEADO.nombre_apellido Nombre y Apellido
FROM EMPLEADO, ANALISIS, PEDIDOS
WHERE EMPLEADO.dni = ANALISIS.dni
AND PEDIDOS.numero_pedido = ANALISIS.numero_pedido
AND ANALISIS.descripcin = anlisis documentacin
AND PEDIDOS.tarea_solicitada = Sistema de Intimaciones. Grandes Contrib. DGR - Tucumn
AND EMPLEADO.dni INSELECT EMPLEADO.dni
FROM EMPLEADO, ANALISIS, PEDIDOS
WHERE EMPLEADO.dni = ANALISIS.dni
AND PEDIDOS.numero_pedido = ANALISIS.numero_pedido
AND ANALISIS.descripcin = anlisis documentacin
AND PEDIDOS.tarea_solicitada = Sistema Gral. de Mesa de Entradas)
ORDER BY 1;
Tabla Resultante:
Nombre y Apellido
Silvia Cirelli
Jefe de Ctedra: Lic. Soledad Bustos Aguiar Ayudantes Diplomados: Lic. Daniela Lobos Anfuso, Lic. Manuel Baquinzay
gestiondedatos.unca@gmail.com
U.N.Ca.
Gestin de Datos 2008
Trabajo Prctico N 3
MANEJO DE SQL
Consulta n 2: Listar las aplicaciones que empezaron a realizarse en Abril del 2004 y no estn finalizadas. Indicar
a que programador se le asigno. No considerar los pedidos del rea: Gerencial.
Tabla Resultante:
Aplicaciones
Sistema Gral. de Mesa de Entradas
Sistema Gral. de Mesa de Entradas
Consulta n 3: Listar los programas que desarrollaron los programadores: Sergio Snchez y Martn Lpez Pondal
en este ao para las reas: PyMC y DGR. No considerar los pedidos realizados por: el Sr. Carlos Calvo.
SELECT PEDIDOS.tarea_solicitada Aplicaciones, PEDIDOS.area Area", APLICACIONES.fecha_inicio_aplicacin Fecha de inicio de la aplicacin, EMPLEADO.nombre_apellido Nombre y
Apellido del Programador
FROM EMPLEADO, APLICACIONES, PEDIDOS
WHERE EMPLEADO.dni = APLICACIONES.dni
AND PEDIDOS.numero_pedido = APLICACIONES.numero_pedido
AND APLICACIONES.fecha_inicio_aplicacin >= 01/01/2005
AND EMPLEADO.nombre_apellido in (Sergio Snchez, Martn Lpez Pondal)
AND PEDIDOS.area in ( PyMC y DGR)
AND PEDIDOS.nom_apellido_responsable = Sr. Carlos Calvo ORDER BY PEDIDOS.tarea_solicitada
Tabla Resultante:
Aplicaciones
Area
Asignacin de Juicios
PyMC
25/01/2005
Sergio Snchez
Asignacin de Juicios
PyMC
25/01/2005
Sistema de Sellos
PyMC
01/03/2005
Sergio Snchez
Sistema de Sellos
PyMC
01/03/2005
Jefe de Ctedra: Lic. Soledad Bustos Aguiar Ayudantes Diplomados: Lic. Daniela Lobos Anfuso, Lic. Manuel Baquinzay
gestiondedatos.unca@gmail.com
U.N.Ca.
Gestin de Datos 2008
Trabajo Prctico N 3
MANEJO DE SQL
SEGUNDA PARTE
EJERCICIOS PROPUESTOS
EJERCICIO N 1:
Tomando como referencia un sistema de Stock crear la siguientes tabla de Articulos
ARTICULOS
Campo
Codarticulo (#)
Desarticulo
Codbarra
Codunidad
Stockminimo
Stockmaximo
Puntopedido
Activo
Tipo de Dato
Texto
Texto
Texto
Numerico
Numerico
Numerico
Numerico
Texto
Longitud
Descripcin
Cdigo del Articulo
Descripcin del Articulo
Codigo de Barra
Unidad de medida
Stock Minimo
Stock Mximo
Punto de Pedido
Estado del Aticulo A=Activo, B=Baja
1. Tomar como referencia el campo codigo de unidad y crear clave fornea, ya que este campo seria campo clave
de la tabla UNIDADES_MEDIDAS
2. Modificar la estructura del campo Activo, para que siempre tomo como valor de referencia el valor A
3. Dar de Alta 5 articulos
4. Realizar una Vista de nombre Articulos_Activos, la cual solo debe contener los articulos que esten activos.
EJERCICIO N 2:
Considerando las tablas del Sistema del Plan Nacer del trabajo practico n2 y trabajando sobre un lenguaje que permita el manejo de SQL, realizar las siguientes operaciones:
1. Definir todas las tablas (Crear tablas con tipos de campos equivalentes a los que usa el motor de base de Datos
PostgreSQL).
2. Crear ndices con la caracterstica unique para todas las tablas.
3. Mediante el comando insert dar de alta 8 registros de la tabla Caps.
4. Crear en todas las tablas Claves Forneas si que existen.
5. Mediante el comando Alter Table, realizar las siguiente modificaciones:
5. 1. Cambiar el campo Cod_Empleado de la tabla EXPEDIENTES por Cod_Usuario este campo debera
ser del mismo tipo de datos con el que se encuentra en la tabla USUARIOS
5. 2. Cambiar el campo Cod_Empleado de la tabla MOVIMIENTOS por Cod_Usuario este campo debera
ser del mismo tipo de datos con el que se encuentra en la tabla USUARIOS
5. 3. Cambiar el nombre de la tabla MOVIMIENTOS por MOV_EXPEDIENTES
5. 4. Agregar CONSTRAINT (restricciones) a los campos de las siguientes tablas
Jefe de Ctedra: Lic. Soledad Bustos Aguiar Ayudantes Diplomados: Lic. Daniela Lobos Anfuso, Lic. Manuel Baquinzay
gestiondedatos.unca@gmail.com
U.N.Ca.
Gestin de Datos 2008
TABLA
CAPS
AREAS
USUARIOS
MOV_EXPEDIENTES
Trabajo Prctico N 3
MANEJO DE SQL
CAMPO
Des_Caps
Des_AreaTra
Des_Usuario
Fecha_Movimiento
CONSTRAINT
NOT NULL
NOT NULL
NOT NULL
NOT NULL
3. Crear una Vista Movimientos_Caps, esta vista deber contener todos los movimientos correspondientes a
los meses de marzo-abril del 2008, donde el monto de las facturas no superen los $ 15.000, a dems deber
tener la descripcin de cada uno de los Caps
Jefe de Ctedra: Lic. Soledad Bustos Aguiar Ayudantes Diplomados: Lic. Daniela Lobos Anfuso, Lic. Manuel Baquinzay
gestiondedatos.unca@gmail.com
U.N.Ca.
Gestin de Datos 2008
Trabajo Prctico N 3
MANEJO DE SQL
EJERCICIO N 3:
Considerando las tablas del Sistema de Biblioteca del trabajo practico n2 y trabajando sobre un lenguaje
que permita el manejo de SQL, realizar las siguientes operaciones:
1.
2.
3.
4.
Jefe de Ctedra: Lic. Soledad Bustos Aguiar Ayudantes Diplomados: Lic. Daniela Lobos Anfuso, Lic. Manuel Baquinzay
gestiondedatos.unca@gmail.com