GUIA DE EJERCICIOS PARA RESOLVER: SQL



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

Ejercicios SQL Empresa

Operaciones con bases de

Las soluciones de las consultas vistas en clase se encuentran en la página 5 en adelante.

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

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

Access SQL: DDL y DML. Una empresa de Ingeniería precisa una base de datos para la gestión de sus proyectos.

LENGUAJE DE CONSULTA ESTRUCTURADO (SQL)

Lenguaje de manipulación de datos

Formatos para prácticas de laboratorio

Manual de Sentencias Básicas en SQL

Conceptos Avanzados de Programación en Internet

Ejemplo de gestión de datos con SQL

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

EJERCICIOS DE SQL. CONSULTAS MÁS COMPLEJAS (III)

Guía de ejercicios de SQL Prof. Mauricio E. Fernández N. Semestre Agosto-Diciembre de 2012

GUÍA DE TRABAJO N 5 GRADO 11 Programación y Diseño de Articulación SENA Software Ing. Néstor Raúl Suarez Perpiñan Página 1 de 6

GUÍA DE TRABAJO N 7 GRADO 11. Ing. Néstor Raúl Suarez Perpiñan Página 1 de 6 GUIA N 7 COMANDOS MYSQL II. CREAR UNA TABLA

VISUALIZACIÓN DE DATOS A PARTIR DE VARIAS TABLAS

Consultas a la BD usando SELECT-SQL. Sintaxis : alias1.campo1,alias3.campo3 tabla1 alias1,tabla2 alias2,tabla3 alias3. alias1.campo2 = alias2.

Operaciones con bases de

Insertar Datos en Tablas

EJERCICIOS CON SOLUCIONES DE SQL ÍNDICE TABLA HOSPITAL... 4 TABLA SALA... 4 TABLA PLANTILLA... 4 TABLA OCUPACIÓN... 5 TABLA DOCTOR...

Capítulo 4. Realización de consultas

DISPARADORES EN SQL DISPARADORES EN SQL:1999 SINTAXIS GENERAL DE UN DISPARADOR EN SQL:1999 SINTAXIS GENERAL DE UN DISPARADOR EN SQL:1999

SQL Structured Query Language

2. Obtener el valor absoluto del SALARIO para todas las filas de la tabla EMPLE

SQL Básico. José Muñoz Jimeno Febrero 2015

Un proyecto de IBM llamado Sistem/R construye un prototipo simple llamado SQUARE que después se transformó en SQL.

CONOCIMIENTOS, COMPRENSIONES Y RECOLECCIÓN DE Pacto Pedagógico

APÉNDICE SQL (Structures Query Language)

Agrupamiento de registros. Elaboración de claúsulas avanzadas de selección. 31/12/2011. Unidad 9

Ejercicios SQL - Manipulación de Datos - Solución

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

El SQL es un lenguaje estándar de programación para el acceso a bases de datos.

Bases de Datos Ejercicios de SQL

Tipos de datos en SQL. SQL. DDL (Data Definition Language) CREATE DOMAIN CREATE TABLE CREATE TABLE. CREATE TABLE con restricciones de atributo

LENGUAJE DE MANIPULACIÓN DE DATOS (DML) CONSULTA DE DATOS

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

Create Database ClaseAutos. Use ClaseAutos

SUBCONSULTAS SQL. Cuando se ejecuta una consulta que contiene una subconsulta, la subconsulta se ejecuta por cada fila de la consulta principal.

RICHARD ALEXANDER BETANCUR SIERRA

Características del lenguaje SQL

RESUMEN SQL. Tipo de coincidencia Modelo Planteado Coincide No coincide. Varios caracteres 'ab*' 'abcdefg', 'abc' 'cab', 'aab'

Ficheros y Bases de Datos Curso Ingeniería Técnica de Informática Primer Parcial. 3-Septiembre Nombre:

SQLModificaciones a la BD

LEA ATENTAMENTE LAS PREGUNTAS Y RESUELVA CADA EJERCICIO COMO SE INDIQUE (EN CASO CONTRARIO EL EJERCICIO NO PUNTUARÁ) CADA EJERCICIO VALE UN PUNTO

Bases de Datos: Structured Query Language (SQL)

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

Funciones agregadas. Funciones agregadas: COUNT

Bases de Datos SQL - Ejemplos

MANUAL BÁSICO DEL LENGUAJE SQL

SQL: Lenguaje de Consulta Estructurado Prof. Jeand Duno

SELECT SELECT WHERE WHERE GROUP BY

Consulta - -- borrado de lavado del Página número 1

Sql Basico. Seminar Introduction

Base de Datos. Docente: Ing. Francisco Rodríguez BASE DATOS. Resultados. Internet. Requerimientos

Introducción a SQL (DML)

Anexo 3 COMPONENTES DE SQL SERVER. Los DDL (Data Definition Languaje) que permiten crear y definir nuevas

Tema 4. DML (Parte I)

Qué es una subconsulta?.

Modificación de datos en SQL

La forma básica de la instrucción SELECT consta de tres cláusulas SELECT, FROM y WHERE (donde)

Práctica 3. Consultas SQL

Diseña y Administra Bases de Datos Guía de Estudio

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

EXAMEN DE BASES DE DATOS 11/06/04 Esquema de trabajo

Bases de Datos 2. Teórico

Consulta - select * from cliente whe Página número 1

Tema 1. Introducción a MySQL. José Muñoz Jimeno Octubre 2015

DISPARADORES EN SQL SINTAXIS GENERAL DE UN DISPARADOR EN SQL:2003

Como lo mejor para entenderlas es usarlas, veamos unos cuantos ejemplos:

Ficheros y Bases de Datos Curso Primer Parcial. 7 de FEBRERO de Nombre:

Examen de Bases de datos Grado de Ingeniería en Informática, Febrero, 2015

Tema 4. Manipulación de datos con SQL

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

BASES DE DATOS - SQL. Javier Enciso

2.4 Manipulación de datos

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

MATERIAL SOBRE SENTENCIAS SQL

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

Está basado en el álgebra y en el cálculo relacional.

Modificar estructura Se pueden agregar/quitar campos a una tabla, modificar el tipo de un campo, agregar/quitar índices a una tabla, etc.

Lenguaje SQL - Ejercicios

CASE expresion WHEN valor1 THEN resultado1 ELSE resultadon END CASE WHEN verdadero THEN resultado1 ELSE resultado2 END

EJERCICIO TRABAJADORES.

Consultas SQL INNER JOIN

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

ÍNDICE. Introducción... Capítulo 1. Características, instalación, inicio y entorno de trabajo... 1

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

Máster en Data Analytics SQL

En este curso se presenta un análisis profundo de la base de datos MySQL para los sistemas operativos Windows y Linux.

Triggers 24/12/2016. Escuela Técnica Superior de Ingeniería Informática Departamento de Lenguajes y Sistemas Informáticos. Triggers en Oracle

Escuela Técnica Superior de Ingeniería Informática Departamento de Lenguajes y Sistemas Informáticos. Triggers

SELECT listadecampos FROM nombredetablas WHERE condicionesdebúsqueda;

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

APÉNDICE D. INTRODUCCIÓN A SQL

Sistemas de Bases de Datos II ITS / ITSB EMT CETP

Diseño de bases de datos Práctica-1 Definición de datos

Transcripción:

GUIA DE EJERCICIOS PARA RESOLVER: SQL I. Dada la siguiente base de datos relacional: RESUELVA LAS SIGUIENTES CONSULTAS EN SQL: 1. Mostrar los nombres de los empleados ordenados alfabéticamente (Z A) select * from EMPLEADO order by nombre desc 2. Seleccionar el nombre, el oficio y la localidad de los departamentos donde trabajan los Vendedores. select nombre, oficio, localizacion from EMPLEADO,DEPARTAMENTO where oficio ='Vendedor' and EMPLEADO.dept_no=DEPARTAMENTO.dept_no 3. Listar los nombres de los empleados cuyo nombre termine con la letra o. select nombre from EMPLEADO where nombre like %o 4. Seleccionar el nombre, el oficio y salario de los empleados que trabajan en León. select nombre, oficio, salario from EMPLEADO where dir= Leon select nombre, oficio, salario from EMPLEADO,DEPARTAMENTO where EMPLEADO.dept_no=DEPARTAMENTO.dept_no and localizacion= El Coyolar 1

5. Seleccionar el nombre, salario y localidad donde trabajan de los empleados que tengan un salario entre 10000 y 13000. select nombre, salario, localizacion from EMPLEADO, DEPARTAMENTO where EMPLEADO.dept_no=DEPARTAMENTO.dept_no and salario between 10000 and 13000 6. Visualizar los departamentos con más de 5 empleados. select EMPLEADO.depto_no,count(*) from EMPLEADO, DEPARTAMENTO where EMPLEADO.dept_no=DEPARTAMENTO.dept_no group by EMPLEADO.depto_no having count(*) > 5 7. Mostrar el nombre, salario y nombre del departamento de los empleados que tengan el mismo oficio que Leonel Alfonso Esquivel. select nombre, salario, nombre_depto from EMPLEADO, DEPARTAMENTO where EMPLEADO.dept_no=DEPARTAMENTO.dept_no and oficio=(select oficio from Cliente where nombre== Leonel Alfonso Esquivel ) 8. Mostrar el nombre, salario y nombre del departamento de los empleados que tengan el mismo oficio que Castillo Montes Luis y que no tengan comisión. select nombre, salario, nombre_depto from EMPLEADO, DEPARTAMENTO where EMPLEADO.dept_no=DEPARTAMENTO.dept_no and oficio = (select oficio from EMPLEADO where nombre= Castillo Montes Luis ) and comision is null 9. Mostrar los datos de los empleados que trabajan en el departamento de contabilidad, ordenados por nombre. select * from EMPLEADO, DEPARTAMENTO where EMPLEADO.dept_no=DEPARTAMENTO.dept_no and nombre_depto = 'Contabilidad' order by nombre 10. Nombre de los empleados que trabajan en León y cuyo oficio sea analista o empleado. select nombre from EMPLEADO, DEPARTAMENTO where Cliente.depto_no=Departamento.depto_no and localizacion='leon' and oficio in ('Analista','Empleado') 11. Calcula el salario medio de todos los empleados. select avg(salario) from EMPLEADO 12. Cuál es el máximo salario de los empleados del departamento 10? select max(salario) from EMPLEADO where depto_no = 10 2

13. Calcula el salario mínimo de los empleados del departamento VENTAS. select min(salario) from EMPLEADO, DEPARTAMENTO where nombre_depto= Ventas and EMPLEADO.dept_no=DEPARTAMENTO.dept_no 14. Calcula el promedio del salario de los empleados del departamento de CONTABILIDAD. select avg(salario) from EMPLEADO, DEPARTAMENTO where EMPLEADO.dept_no=DEPARTAMENTO.dept_no and nombre_depto= Contabilidad 15. Cuántos empleados hay en el departamento número 10? select count(*) from EMPLEADO where depto_no = 10 16. Cuántos empleados hay en el departamento de VENTAS? select count(*) from EMPLEADO, DEPARTAMENTO where nombre_depto ='VENTAS'. 17. Calcula el número de empleados que no tienen comisión. select count(*) from EMPLEADO where comision is null. 18. Visualizar cuántos nombres de los empleados empiezan por la letra A. select count(*) from EMPLEADO where nombre like 'A%'. 19. Visualizar el número de empleados de cada departamento. select EMPLEADO.depto_no,count(*) from EMPLEADO, DEPARTAMENTO where EMPLEADO.dept_no=DEPARTAMENTO.dept_no group by EMPLEADO.depto_no. 20. Para cada oficio obtener la suma de salarios. select oficio, sum(salario) from EMPLEADO group by oficio. 3

MÁS EJEMPLOS 21. Mostrar los datos de los empleados cuyo salario sea mayor que la media de todos los salarios. select * from EMPLEADO where salario>(select avg(salario) from EMPLEADO) 22. Seleccionar el nombre del empleado que tiene máximo salario. select nombre from EMPLEADO where salario=(select max(salario) from EMPLEADO) 23. Mostrar el nombre del empleado que tiene el salario más bajo. select nombre from EMPLEADO where salario=(select min(salario) from EMPLEADO) 24. Mostrar los datos del empleado que tiene el salario más alto en el departamento de VENTAS. select nombre from EMPLEADO,DEPARTAMENTO where EMPLEADO.depto_no= DEPARTAMENTO.depto_no and nombre_depto='ventas' and salario = (select max(salario) from EMPLEADO,DEPARTAMENTO where EMPLEADO.depto_no = DEPARTAMENTO.depto_no and nombre_depto='ventas') 25. Visualizar el departamento con más empleados. select depto_no from EMPLEADO group by count(*) having count(*) = (select max(count(*)) from EMPLEADO group by depto_no) 26. Visualizar el número de departamento que tenga más empleados cuyo oficio sea empleado. select depto_no from EMPLEADO where oficio='empleado' group by depto_no having count(*) = (select max(count(*)) from EMPLEADO where oficio='empleado' group by depto_no) 27. Mostrar el número de oficios distintos de cada departamento. select depto_no,count(*) from EMPLEADO group by depto_no, oficio 28. Mostrar los departamentos que tengan más de dos personas trabajando en la misma profesión. select depto_no, count(*) from EMPLEADO group by depto_no, oficio having count(*) > 2 4

EJEMPLOS DE MODIFICACIÓN DE LA BASE DE DATOS 1. Insertar en la tabla EMPLEADO un empleado con código 081-220678-0008U, nombre Pérez Luis Carlos de 32 años, oficio Analista, vive en Matagalpa, fecha de alta en la empresa el 22-06- 2001, su salario es C$ 15600, no tiene comisión y pertenece al departamento 20. insert into EMPLEADO(codigo_c,nombre,edad,oficio,dir,fecha_alt,salario,comision, depto_no) values( 220678-0008U, Pérez Luis Carlos,32, Analista, Matagalpa, 22-06-2001,15600,null,20) 2. Insertar en la tabla DEPARTAMENTO un departamento cuyo número sea 50, de nombre GENERAL y cuya localización sea Laborio. insert into DEPARTAMENTO values(50,'general','laborio') 3. Insertar en la tabla DEPARTAMENTO un departamento cuyo número sea 60 y de nombre PRUEBAS. insert into DEPARTAMENTO(depto_no,nombre_depto) values(60,'prueba ) 4. Insertar en la tabla PRUEBA los datos de los empleados que pertenecen al departamento número 30. insert into PRUEBA(select * from EMPLEADO where depto_no=30) 5. Insertar en la tabla PRUEBA2 el codigo_c, número de departamento y salario de los empleados que pertenecen al departamento número 20. insert into PRUEBA2 (select codigo_c,depto_no,salario from EMPLEADO where depto_no = 20) 6. Doblar el salario a todos los empleados del departamento 30. update EMPLEADO set salario = salario*2 where depto_no=30 7. Cambiar todos los empleados del departamento número 30 al departamento número 20. update EMPLEADO set depto_no = 20 where depto_no = 30 8. Incrementar en un 10% el sueldo de los empleados del departamento 10. update EMPLEADO set salario=salario*1.1 where depto_no=10 9. Cambiar la localidad del departamento número 10 a Zaragoza. update EMPLEADO set localizacion='zaragoza' where depto_no = 10 5

10. Igualar el salario de Esquivel Jose al salario de Esquivel Leonel Alfonso, de la tabla PRUEBA. update EMPLEADO set salario = (select salario from PRUEBA where nombre=' Esquivel Leonel Alfonso ') where nombre=' Esquivel Jose' 11. En la tabla DEPARTAMENTO borrar el departamento número 40. delete from DEPARTAMENTO where depto_no = 40 12. En la tabla EMPELADO borrar todos los empleados que sean del departamento 20 y sean ANALISTAS. delete from EMPLEADO where depto_no = 20 and oficio='analista' 13. Borrar de la tabla EMPLEADO todos los empleados que no tengan comisión. delete from EMPLEADO where comision is null 6