1. Dadas las tablas ALUM y NUEVOS, insertar en la tabla ALUM los nuevos alumnos.



Documentos relacionados
Tema 4. Manipulación de datos con SQL

CONSULTAS BASICAS EN SQL SERVER

EXAMEN TEMAS 3, 4 y 5. CREACIÓN Y EXPLOTACIÓN DE UNA BASE DE DATOS

Operaciones con bases de

APÉNDICE SQL (Structures Query Language)

VISUALIZACIÓN DE DATOS A PARTIR DE VARIAS TABLAS

Repaso de Conceptos Básicos de Bases de Datos

Unidad III: Lenguaje de manipulación de datos (DML) 3.1 Inserción, eliminación y modificación de registros

Sistemas de Datos Curso: Ernesto Chinkes. SQL Básico Algebra Relacional

Bases de Datos: Structured Query Language (SQL)

Bases de datos relacionales y el modelo entidad-relación

1.264 Tema 7. Introducción a SQL

PRACTICA DE SQL. Se dispone de las tablas EMPLE y DEPART que contienen los siguientes datos.

Práctica 3. Consultas SQL

Sql Basico. Seminar Introduction

6 - Recuperar algunos registros (where)

SQL (Structured Query Language)

Bases de Datos SQL - Ejemplos

Lenguaje de Consulta Estructurado S Q. Lenguaje de Consulta Estructurado. Wael Najjar /

Bases de Datos 2. Teórico

SUB CONSULTAS EN SQL IMPORTACIÓN Y EXPORTACIÓN DE TABLAS DE A OTRA PLATAFORMA

TRANSACT-SQL, DISEÑO Y PROGRAMACIÓN DE BASES DE DATOS EN SQL SERVER 2008

SQL (DML) Carlos A. Olarte Gestión y Modelación de SQL Datos (DML)

SQL (Structured Query Language)- DML

Unidad. Lenguaje SQL. (Structured Query Language)

1. DML. Las subconsultas

A.1. Definiciones de datos en SQL

SQL. Lenguaje de Consulta Estructurado. Curso básico de SQL (Leire Urcola Carrera)

El Lenguaje PL/SQL. Un lenguaje de propósito general orientado a la inclusión de sentencias SQL. Estructura del código PL/SQL.

2. ESTUDIO DE INDICES

Boletín de Problemas de la Asignatura II18 Bases de Datos. Ingeniería Informática Universitat Jaume I

BASES DE DATOS EN VISUAL BASIC ACCESS + SQL

LAS SUBCONSULTAS SQL SERVER Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE

Structured Query Language (SQL) Fundamentos de Bases de Datos InCo

TEMA 6: MODIFICACIÓN DE LA BASE DE DATOS EN SQL

BASES DE DATOS - SQL. Javier Enciso

Manual de introducción SQL Centro de Tecnología Informática

UNIDAD 1.- PARTE 1 MANIPULACIÓN AVANZADA DE DATOS CON SQL. BASES DE DATOS PARA APLICACIONES. Xochitl Clemente Parra Armando Méndez Morales

GUIA DE EJERCICIOS PARA RESOLVER: SQL

T12 Vistas y tablas temporales

Aplicaciones de las vistas Concepto de vista Vistas en SQL Vistas en SQL.

Diseño de bases de datos

LENGUAJE SQL. En Mysql se utiliza un subconjunto de SQL (update, insert into, delete, select, truncate,etc).

FUNCIONES EN SQL SERVER

Qué es una subconsulta?.

Ejercicios Resueltos de SQL

EJERCICIO SOBRE EMPRESA DE MATERIALES DE CONSTRUCCIÓN

Trabajos de Ampliación. Bases de datos NoSQL.

Curso SQL Nivel Avanzado 1. Miguel Jurado García

BASE DE DATOS QUÉ ES UNA BASE DE DATOS?

Formatos para prácticas de laboratorio

LENGUAJE ESTRUCTURADO DE CONSULTAS SQL (2)

Práctica 2. Academia Bristol

Formato para prácticas de laboratorio

Si queremos modificar la contraseña de sys, una vez que accedamos al sistema como sys, escribiremos la sentencia:

select nombre from profesores where categoria='aso6';

Ejercicios SQL - Select TutorialesNET Versión Revisión 1 25 de julio de 2015

PRACTICA DE ADMINISTRACION DE BASES DE DATOS

Tema: Uso de sentencias SQL

2. Calcula cuanto ganan en total cada uno de los grupos de empleados clasificados por tipo de trabajo (Job_id)

Sintaxis: CURSOR nombre_cursor[(param1 [IN] tipo1,... )] IS consulta ;

El lenguaje SQL es un lenguaje estándar para el acceso y

PARTE I LENGUAJE SQL. GESTION DE DATOS

LENGUAJE DE CONSULTA ESTRUCTURADO - SQL CONTENIDO

UNION, INTERSECCION Y DIFERENCIA. SELECT TABLE Expresión con operador de reunión (SELECT * FROM PROFESOR) UNION (SELECT * FROM ESTUDIANTE)

Restricciones de Integridad

Sistemas de Bases de Datos II ITS / ITSB EMT CETP

Sistema Gestor de Bases de Datos Relacionales (SGBDR), que maneja distintos tipos de datos:

Conceptos Avanzados de Bases de datos

Sistemas de Datos Curso: Ernesto Chinkes. Subconsultas Stored Procedures - Triggers

8 SQL SERVER 2008 RA-MA

COMANDOS DE SQL, OPERADORES, CLAUSULAS Y CONSULTAS SIMPLES DE SELECCIÓN

Base de Datos Oracle 10g: Introducción a SQL Código: D Duración: 5 días (40 horas)

SQL Server FEMEPA SQL Server 2000

Bases de Datos Relacionales

Consultas con combinaciones

Tema 1. Bases de datos activas

ÍNDICE. Introducción... Capítulo 1. Novedades de Access

5- Uso de sentencias avanzadas

6- Combinación de tablas

Práctica Obtener el código y el doble del precio de los artículos cuyo precio es inferior a 5 céntimos de euro.

Desarrollo Cobol/DB2

ESCUELA DE CIENCIAS BASICAS TECNOLOGIA E INGENIERIA Programación de sitios web Act 11: Reconocimiento de la unidad 3

2- Intente crear una tabla llamada "clientes" UTILIZANDO el modo de Consulta, en el modo SQL :

SQL. Orígenes y Evolución

Dependiendo de las tareas, podemos clasificar las sentencias SQL en dos tipos:

Lenguaje para descripción de datos

INTRODUCCIÓN INTRODUCCIÓN INTRODUCCIÓN INTRODUCCIÓN INSTRUCCIONES DE DEFINICIÓN DE TABLAS E ÍNDICES INSTRUCCIONES DE DEFINICIÓN DE TABLAS E ÍNDICES

ÍNDICE INTRODUCCIÓN...13

Laboratorios de BASES DE DATOS. (I.T. Informática)

OPTIMIZACIÓN DE CONSULTAS EN SQL. Análisis de Consultas y Transacciones Ajuste de Indices Ajuste de Consultas

Número de Práctica: 1 Nombre de la Práctica: Comunicación Cliente Servidor Vía Sockets Java con Sistema Manejador de Bases de Datos

Ing. Santiago C. Pérez Laura Noussan Lettry Carlos Campos

PHP Perfect SQL v1.0 (SQL perfectas en PHP)

4- Uso de sentencias para el envió y extracción de datos

8 MICROSOFT SQL SERVER 2008 R2. CURSO PRÁCTICO RA-MA

SQL y XML en Oracle XE 11g. Laboratorio de Bases de datos Jonathan Medina Gómez

BASES DE DATOS TEMA 4. SQL. UN LENGUAJE DE CONSULTA COMERCIAL PARA BASES DE DATOS RELACIONALES Contenidos generales

TEMA 4: El lenguaje SQL II: Introducción, modificación y borrado de datos.

EJERCICIOS RESUELTOS

Transcripción:

1. Dadas las tablas ALUM y NUEVOS, insertar en la tabla ALUM los nuevos alumnos. SQL> INSERT INTO alum (SELECT * FROM nuevos MINUS SELECT * FROM alum); 2. Borrar de la tabla ALUM los ANTIGUOS alumnos. DELETE FROM alum WHERE nombre IN(SELECT nombre FROM antiguos INTERSECT SELECT nombre FROM alum) 2 filas borradas. 3. EMPLE y DEPART. Insertar un empleado de apellido saavedra con número 200, la fecha de alta será la actual, el SALARIO será el mismo salario de sala más el 20 por 100 y el resto de datos serán los mismos que los datos de sala. INSERT INTO emple SELECT 200, 'SAAVEDRA', oficio, dir, sysdate, salario+salario*20/100, comision, dept_no FROM emple WHERE apellido='sala' 4. Modificar el número de departamento de saavedra. El nuevo departamento será el departamento donde hay más empleados cuyo oficio sea empleado. UPDATE emple SET dept_no=(select dept_no FROM emple WHERE oficio='empleado' GROUP BY dept_no HAVING COUNT(*)= (SELECT MAX(COUNT(*)) FROM emple WHERE oficio='empleado' GROUP BY dept_no)) WHERE apellido='saavedra' 1 fila actualizada. 5. Borrar todos los departamentos de la tabla DEPART para los cuales no existan empleados en emple SQL> DELETE FROM depart WHERE dept_no=(select dept_no FROM emple GROUP BY dept_no HAVING COUNT(*)=0); 0 filas borradas. 6. PERSONAL,PROFESORES y CENTROS. Modificar el número de plazas con un valor igual a la mitad en aquellos centros con menos de dos profesores.

SQL> UPDATE centros SET num_plazas=num_plazas/2 WHERE cod_centro IN (SELECT cod_centro FROM profesores HAVING COUNT(*)<2); 2 filas actualizadas. 7. Eliminar los centros que no tengan personal. SQL> DELETE FROM centros WHERE cod_centro IN (SELECT cod_centro FROM profesores HAVING COUNT(*) =0) 0 filas borradas. 8. Añadir un nuevo profesor en el centro o en los centros cuyo número de administrativos sea 1 en la especialidad de idioma, con dni 8790055 y de nombre Clara Salas. INSERT INTO profesores (cod_centro, dni, apellidos, especialidad) SELECT cod_centro, 8790055, 'CLARA SALAS', 'IDIOMA' FROM centros WHERE cod_centro IN (SELECT cod_centro FROM personal WHERE funcion='administrativo' HAVING COUNT(*)=1) 2 filas creadas. 9. Borrar el personal que esté en centros de menos de 300 plazas y con menos de dos profesores. SQL> DELETE FROM personal WHERE cod_centro IN (SELECT cod_centro FROM centros WHERE num_plazas < 300 AND cod_centro IN (SELECT cod_centro FROM profesores HAVING COUNT(*)<2)); 2 filas borradas. 10. Borrar a los profesores que estén en la tabla PROFESORES y que no estén en la tabla PERSONAL. SQL> DELETE FROM profesores WHERE dni NOT IN (SELECT dni FROM personal WHERE funcion='profesor'); 11. Las tablas ARTÍCULOS,FABRICANTES,TIENDAS,PEDIDOS Y VENTAS vienen determinadas por los atributos NOT NULL. Dar de alta un nuevo artículo de Primera categoría para los fabricantes de francia y abastecer con cinco unidades de ese artículo a todas las tiendas y en la fecha de hoy. SQL> INSERT INTO articulos

SELECT 'Chocolate',cod_fabricante,1,'Primera',100,75,35 FROM fabricantes WHERE pais='francia'; 12. Insertar un pedido de 20 unidades en la tienda 1111-a con el artículo que mayor número de ventas haya realizado. SQL> INSERT INTO ventas SELECT '1111-A', articulo, cod_fabricante, peso, categoria, SYSDATE, 20 WHERE articulo=(select articulo GROUP BY articulo HAVING SUM(unidades_vendidas) = (SELECT (MAX(SUM(unidades_vendidas))) GROUP BY articulo)); 4 filas creadas. 13. Dar de alta una tienda en la provincia de Madrid y abastecerla con 20 unidades de cada uno de los artículos existentes. INSERT INTO tiendas VALUES ('6755-J','Mercancias Andres','C/nose 32','Zaragoza','Zaragoza',50012) SELECT '6755-J',articulo, cod_fabricante, peso,categoria, SYSDATE, 20 FROM articulos 31 filas creadas. 14. Dar de alta dos tiendas en la provincia de Sevilla y abastecerlas con 30 unidades de artículos de la marca de fabricante gallo. SQL> INSERT INTO tiendas VALUES('2349-D','OSCAR MARKET','C/nOSE 34','SEVILLA','SEVILLA',41253) SQL> INSERT INTO tiendas VALUES('1239-A','HECTOIS MARKET','C/nOSE 34','SEVILLA','SEVILLA',41253) SELECT nif, articulo, cod_fabricante, peso, categoria, SYSDATE, 30 FROM articulos, tiendas WHERE tiendas.provincia='sevilla' AND cod_fabricante = (SELECT cod_fabricante FROM fabricantes WHERE nombre='gallo')

15. Realizar una venta para todas las tiendas de toledo de 10 unidades en los artículos de primera categoría. SQL> INSERT INTO ventas SELECT nif,articulo,cod_fabricante,peso,categoria,sysdate,10 FROM articulos,tiendas WHERE categoria='primera' AND provincia='toledo'; 36 filas creadas. 16. Para aquellos artículos de los que se hayan vendido más de 30 unidades, realizar un pedido de 10 unidades para la tienda con NIF 5555-B con la fecha actual. SELECT '555-D',articulo,cod_fabricante,peso,categoria,SYSDATE,10 WHERE articulo IN (SELECT articulo GROUP BY articulo HAVING SUM(unidades_vendidas)>30) 46 filas creadas. 17. Cambiar todos los artículos de primera categoría del país ITALIA SQL> UPDATE articulos SET categoria='quinta' WHERE categoria='primera' AND cod_fabricante = (SELECT cod_fabricante FROM fabricantes WHERE pais='italia'); 2 filas actualizadas. 18. Eliminar aquellas tiendas que no han realizado ventas. 1 DELETE FROM TIENDAS 2* WHERE NIF NOT IN (SELECT NIF FROM VENTAS) 19. Eliminar los artículo que no hayan tenido no compras ni ventas. SQL> R 1 DELETE FROM ARTICULOS 2 WHERE ARTICULO NOT IN (SELECT ARTICULO FROM VENTAS 3 GROUP BY ARTICULO) 4 AND ARTICULO NOT IN (SELECT ARTICULO FROM PEDIDOS 5* GROUP BY ARTICULO) 4 filas borradas. 20. Borrar los pedidos de primera categoría cuyo país de procedencia sea BÉLGICA. SQL> DELETE FROM PEDIDOS 2 WHERE COD_FABRICANTE = (SELECT COD_FABRICANTE FROM FABRICANTES

3 WHERE PAIS='BELGICA'); 6 filas borradas. 21. Borrar los pedidos que no tengan tienda. SQL> DELETE FROM PEDIDOS 2 WHERE NIF NOT IN(SELECT NIF FROM TIENDAS); 22. Restar uno a las unidades de los últimos pedidos de la tienda con nif 555-B 1 UPDATE PEDIDOS 2 SET UNIDADES_PEDIDAS=UNIDADES_PEDIDAS-1 3 WHERE NIF='5555-B' AND 4 FECHA_PEDIDO= 5* (SELECT MAX(FECHA_PEDIDO) FROM PEDIDOS WHERE NIF='5555-B') 1 fila actualizada.