EJERCICIOS SQL 1. Obtener los nombres de los empleados cuya comisión es superior o igual al 50% de su sueldo. 2. Se ha decidido dar a los empleados una paga extra de 500 € por hijo a partir del cuarto inclusive. Obtener por orden alfabético nombre y salario total con la extra. 3. Hallar por orden alfabético los nombres de los empleados tales que si se les da una gratificación de 100 € por hijo, el total de esa gratificación no supera a la décima parte del sueldo. 4. Hallar el nombre y salario total de los empleados del dpto. 112, por orden de salario total decreciente y por orden alfabético dentro de salario total. 5. Obtener los nombres de los departamentos que no dependen de otro. 6. Obtener por orden alfabético los nombres y salarios de los empleados cuyo salario es inferior a la comisión más alta existente. 7. Obtener por orden alfabético los nombres y salarios de los empleados cuyo salario dividido por su nº de hijos cumpla una, o ambas, de las siguientes condiciones: - Que sea inferior a 1200 €. - Que sea superior al doble de su comisión. 8. Obtener por orden alfabético los nombres y comisiones de los empleados del departamento 110 si hay en él algún empleado que tenga comisión. 9. Hallar por nº de empleado el nombre y salario total de los empleados cuyo salario total supera al salario mínimo en 3000 €. 10.Se desea hacer un regalo de un 1% del salario a los empleados en el día de su onomástica. Hallar, por orden alfabético, los nombres y cuantía de los regalos para los que celebren su santo el día de San Honorio. 1 11.Obtener nombres abreviados para los departamentos tomando sus 9 primera letras, por orden alfabético. 12.Obtener los números de departamento, y los 5 caracteres siguientes al de la posición duodécima de sus nombres, mostrándolos por orden de nº de departamento. 13.Obtener los nº de departamento, y para los que tengan más de 12 caracteres en el nombre extraer los 5 siguientes, mostrándolos por orden de nº de departamento. 14.Obtener los tres últimos caracteres de los nombres de departamento por orden alfabético. 15.Hallar, por orden alfabético, los nombres de empleados suprimiendo las 3 últimas letras del nombre de pila, para los empleados cuyos nombres de pila tengan más de 6 letras. 16.Hallar la masa salarial anual (salario más comisión) de la empresa (14 pagas). 17.Hallar el presupuesto medio de los departamentos cuyo presupuesto supera al presupuesto medio de los departamentos. 18.Hallar el salario máximo y el mínimo para cada grupo de empleados con igual nº de hijos y que tienen al menos 1, y sólo si hay más de un empleado en el grupo y el salario máximo de éste excede a 2000 €. Ordenar por nº de hijos. 19.Hallar el salario medio por departamento para aquellos departamentos cuyo salario máximo es inferior al salario medio de todos los departamentos. 20.Para los departamentos en los que hay algún empleado cuyo salario sea mayor de 4000 €, hallar el nº de empleados y la suma de sus salarios, comisiones y nº de hijos. 21.Hallar los nº de extensión telefónica mayores de los diversos departamentos, sin incluir los nº de éstos. 2 22.Para cada extensión telefónica, hallar el nº de departamentos a los que sirve. 23.Para los departamentos cuyo salario medio supera al de la empresa, hallar cuántas extensiones telefónicas tienen. 24.Hallar el máximo valor de la suma de los salarios de los departamentos. 25.Obtener los nombres y sueldos de los empleados que hayan empezado a trabajar en la empresa en el año 1988 o después, por orden alfabético. 26.Obtener, por orden alfabético, los nombres de los empleados que empezaron a trabajar en el año 1966. 27.Obtener, por orden alfabético, los nombres de los empleados que han ingresado el 1-1-1988 o en el día de hoy. 28.Obtener, por orden alfabético, los nombres y salarios de los empleados que o bien ingresaron después del 1-1-1988 o bien antes y además tienen un salario inferior al salario más bajo de los que ingresaron con posterioridad al 1-1-1988 incrementado en un 10%. 29.Para los empleados de los departamentos 111 y 112 hallar por orden alfabético: nombre, edad en años cumplidos en la fecha de hoy y edad que tenían cuando ingresaron en la empresa. 30.Para los empleados de los departamentos 110 y 111, hallar por orden alfabético: nombre y tiempo que llevan en la empresa en el día de hoy expresado en años, meses y días. 31.Hallar para los empleados de los departamentos 110 y 112 su nombre y el mes y el día de su cumpleaños, por orden creciente de éstos. 32.Hallar la edad media en años cumplidos en el día de hoy de los empleados que tienen más de 2 hijos. 33.Para los departamentos 111 y 112, hallar la media de los años de servicio de sus empleados el día 31-12-1986. 3 34.Para los empleados que han ingresado en la empresa en los últimos 5 años, hallar la edad media en años cumplidos de la edad a la que han ingresado. 35.Hallar cuántos empleados han ingresado en el año actual. 36.Para cada extensión telefónica y cada departamento hallar cuántos empleados la usan y el salario medio de éstos. 4 CONSULTAS SOBRE VARIAS TABLAS 1. Para los departamentos cuyo director lo sea en funciones, hallar el nº de empleados y la suma de sus salarios. 2. Para los departamentos cuyo presupuesto anual supera los 60.000 €, hallar cuántos empleados hay en promedio por cada extensión telefónica. 3. Hallar, por orden alfabético, los nombres de los empleados que son directores en funciones. 4. Para todos los departamentos que no sean de dirección ni de sectores, hallar número de departamento y sus extensiones telefónicas, por orden creciente de departamento, y dentro de éste por número de extensión creciente. 5. Comprobar que todos los empleados que son directores de departamento están en la tabla empleados. 6. Obtener, por orden alfabético, todos los datos de los centros de trabajo en los que hay algún departamento cuyo director lo sea en funciones. 7. Hallar, por orden alfabético, los nombres de los departamentos en los que hay algún empleado que cumpla este año más de 50 años de edad. CONSULTAS COMPUESTAS 1. Hallar el salario medio de los empleados que tienen comisión y los que no. 2. Para los empleados que no tienen comisión, obtener por orden alfabético el nombre y el cociente entre su salario y el nº de hijos, pero si un empleado no tiene hijos, obtener el salario sin más, indicando este caso con un literal. 3. Hallar por departamento la masa salarial total (suma de todos los salarios y comisiones del departamento) y el nombre, por orden alfabético. 5 CREACIÓN Y MODIFICACIÓN DE TABLAS 1. Crear una tabla TEMPLE2 con las mismas características que TEMPLE. 2. Incluir en TEMPLE2 los empleados cuyo salario supere al salario medio de su departamento. 3. Borrar de TEMPLE2 los empleados cuyo salario (sin comisión) supere al salario medio de los empleados de su departamento, excluyéndose a él mismo. 4. Disminuir en TEMPLE2 en un 5% el salario de los empleados que superan el 50% del salario máximo de su departamento. 5. Hallar el salario medio actual de los empleados que han ingresado cada año. (No tiene nada que ver con la tabla TEMPLE2). 6. Hallar cuántos empleados hay cuyos salarios estén en los intervalos siguientes: 0 a 1000, 1001 a 2000, 2001 a 3000, 3001 a 4000, 4001 a 5000, más de 5000. Hallar también el salario medio dentro de cada intervalo. 7. Borramos la tabla TEMPLE2, suponemos que tenemos otra tabla llamada TBORRA que tiene una sola columna llamada NUMEM. En esta tabla hay una fila por cada empleado que causa baja este mes. Hay que almacenar en TEMPLE2 todas las filas de estos empleados para posteriores procesos y borrarlas de TEMPLE. 6 VISTAS Y AUTORIZACIONES 1.- Crear una vista donde aparezcan todas las filas de tdepto pero no la columna PRESU. Hacerla pública para consultas. 2.- Crear una vista llamada VEMCOM con las columnas NUMEM, NUMDE, EXTEL y NOMEM, de los empleados que trabajan a comisión. Pública para consultas. 3.- Crear una vista llamada VJUBIL1 en la que aparezcan todos los datos de los empleados que cumplen 65 años de edad este año, de manera que puedan ser consultados solamente por el director de personal (usuario U0150). 7