Administración de sistemas informáticos
Consultas en SQL (Structured Query Language)
1. CONSULTAS SENCILLAS.
Obtener los nombres de todos los centros de trabajo de la empresa ordenados alfabéticamente.
SELECT NOMCE FROM TCENTR ORDER BY NOMCE ASC
Obtener los nombres de los empleados que trabajan en el departamento 122.
SELECT NOMEM FROM TEMPLE
WHERE NUMDE =122
Extraer todos los datos del departamento 121.
SELECT * FROM TDEPTO
WHERE NUMDE =121
1.4. Obtener los nombres, sueldos y número de hijos de los empleados con más de 3 hijos,
ordenados por orden alfabético.
SELECT NOMEM FROM TEMPLE
WHERE NUMHI>3
ORDER BY NOMEM ASC
1.5. Obtener la comisión, departamento y nombre de los empleados cuyo salario es menor que
190000 ptas. Ordenándolos por departamento por orden creciente y por comisión en orden
decreciente, dentro de cada departamento.
SELECT COMIS,NUMDE,NOMEM
FROM TEMPLE
WHERE SALAR <190
ORDER BY NUMDE ASC, COMIS DESC
1.6. Obtener por orden alfabético los nombres de los departamentos cuyo presupuesto sea mayor de
2000000.
SELECT NOMDE
FROM TDEPTO
WHERE PRESU >2
ORDER BY NOMDE ASC
1.7. Obtener los números de los departamentos donde trabajan empleados cuyo salario sea menor de
250000 ptas.
SELECT DISTINCT NUMDE
FROM TEMPLE
WHERE SALAR <250
1.8. Obtener los valores diferentes de comisiones que hay en el departamento 110.
SELECT DISTINCT COMIS
FROM TEMPLE
WHERE NUMDE =110
1.9. Hallar por orden alfabético los nombres de los departamentos cuyo director lo es en funciones y
no en propiedad.
SELECT NOMDE
FROM TDEPTO
WHERE TIDIR ='f'
ORDER BY NOMDE ASC
1.10. Obtener un listín de los empleados del departamento 121 incluyendo el nombre del
empleado, número de empleado y extensión telefónica (por orden alfabético).
SELECT NOMEM,NUMEMP,EXTEL
FROM TEMPLE
ORDER BY NOMEM ASC
1.11. Obtener por orden creciente una relación de todos los números de extensiones
telefónicas de los empleados.
SELECT DISTINCT EXTEL
FROM TEMPLE
ORDER BY EXTEL ASC
1.12. Hallar la comisión, nombre y salario de los empleados con más de 4 hijos, clasificados
por comisión y dentro de la comisión por orden alfabético.
SELECT COMIS,NOMEM,SALAR
FROM TEMPLE
WHERE NUMHI >4
ORDER BY COMIS,NOMEM ASC
1.13. Obtener salario y nombre de los empleados sin hinjos por orden decreciente de salario y
por orden alfabético dentro del salario.
SELECT SALAR,NOMEM
FROM TEMPLE
WHERE NUMHI =0
ORDER BY SALAR DESC, NOMEM ASC
1.14. Obtener los nombres y sueldos anuales expresados en pesetas de los empleados del
departamento 100, presentados por orden decreciente de sueldos.
SELECT NOMEM,(SALAR*1000)*12
FROM TEMPLE
WHERE NUMDE=100
ORDER BY SALAR DESC
1.15. Obtener los nombres de los empleados cuya comisión sea igual o superior al 50 % de su
salario, por orden alfabético.
SELECT NOMEM
FROM TEMPLE
WHERE COMIS >= SALAR*0.5
ORDER BY NOMEM ASC
1.16. En una campaña de ayuda familiar se ha decidido dar a los empleados una paga extra de
5000 ptas. por hijo, a partir del cuarto inclusive. Obtener por orden alfabético para estos
empleados: nombre y salario total que van a cobrar incluyendo la paga extra y el salario sin
incluirla.
SELECT NOMEM,SALAR*1000,(SALAR*1000)+(NUMHI*5000) AS [SALARIO + EXTRA]
FROM TEMPLE
ORDER BY NOMEM
1.17. El usuario U1 ejecuta la sentencia: SELECT NOMEM, USER FROM TEMPLE WHERE
NUMEM = 10. ¿Cual es la respuesta?.
De la tabla temple muestra el numero de empleado 10
1.18. Resultado de las sentencias siguientes que las ejecuta el usuario: USER8.
a. SELECT USER FROM TDEPTO
muestra todos los usuarios de la tabla TEMPLE
b. SELECT USER FROM TEMPLE WHERE NUMHI > 4
muestra los usuarios con mas de 4 hijos de la table TEPLE
c. SELECT DISTINCT USER FROM TEMPLE
muestra los usuarios de la table TEMPLE sin repetirlos
d. SELECT DISTINCT USER FROM TDEPTO
selecciona los usuarios de la table TDEPTO sin repetirlos
1.19. Obtener una relación por orden alfabético de los departamentos cuyo presupuesto es
inferior a 5000000 ptas. El nombre del departamento vendrá precedido de las palabras:
`Departamento de'.
SELECT 'DEPARTAMENTO DE ' + NOMDE
FROM TDEPTO
WHERE PRESU < 5
ORDER BY NOMDE ASC
1.20. El presupuesto medio mensual de un departamento es el presupuesto anual dividido por
12. Se decide aumentar el presupuesto medio mensual de todos los departamentos un 10% a
partir del mes de Octubre inclusive, Sí el presupuesto mensual medio anterior a Octubre es
mayor de 500000 ptas./mes. Hallar por orden alfabético el nombre del departamento y su
presupuesto anual después del incremento.
SELECT NOMDE AS [NOMBRE DE DEPARTAMENTO],((PRESU*1000000)/12)*1.10 AS [PRESUPUESTO MENSUAL INCREMENTADO],(PRESU *1000000)*1.10 AS [PRESUPUESTO ANUAL INCREMENTADO]
FROM TDEPTO
WHERE PRESU >0,5
ORDER BY [PRESUPUESTO ANUAL INCREMENTADO] DESC , NOMDE ASC
1.21. Suponiendo que en los próximos 3 años el coste de vida va a aumentar un 6% anual y
que suben los salarios en la misma proporción, hallar para los empleados de más de 4 hijos, su
nombre y su sueldo anual actual y para cada uno de los próximos 3 años, clasificados por orden
alfabético.
SELECT NOMEM, SALAR*1000 AS [SALARIO MENSUAL],
SALAR*12*1000 AS [SALARIO ANUAL],
SALAR*12*1000*1.06 AS [SALARIO PRIMER AÑO INCR.],
SALAR*12*1000*1.12 AS [SALARIO SEGUNDO AÑO INCR.],
SALAR*12*1000*1.18 AS [SALARIO TERCER AÑO INCR.]
FROM TEMPLE
WHERE NUMHI>4
ORDER BY NOMEM
1.22. Hallar por orden alfabético los nombres de los empleados tales que si se les da una
gratificación de 10000 ptas. por hijo el total de esta gratificación no supera a la décima parte del
salario.
SELECT NOMEM AS [NOMBRE EMPLEADO],NUMHI*1000 AS GRATIFICACION,SALAR*1000 AS SALARIO
FROM TEMPLE
WHERE NUMHI>0 AND NUMHI*1000<(SALAR*1000)/10
ORDER BY [NOMBRE EMPLEADO]
1.23. Para los empleados del departamento 112, hallar el nombre y el salario total de cada uno
(salario más comisión), por orden de salario total decreciente, y por orden alfabético dentro de
salario total.
SELECT NOMEM, SALAR*1000 SALARIO,COMIS*1000 AS COMISION,(SALAR*1000)+(COMIS*1000) AS [SALARIO TOTAL]
FROM TEMPLE
WHERE NUMDE=112
ORDER BY [SALARIO TOTAL] DESC, NOMEM ASC
1.24. Hallar por orden de número de empleado el nombre y salario total (salario más
comisión) de los empleados cuyo salario total supera a 300000 ptas. mensuales.
SELECT NUMEMP AS [NUMERO DE EMPLEADO],NOMEM AS [NOMBRE DEL EMPLEADO], (SALAR+COMIS)*1000 AS [SALARIO TOTAL]
FROM TEMPLE
WHERE (SALAR+COMIS)*1000>300000
1.25. Obtener los números de los departamentos en los que haya algún empleado cuya
comisión supera al 20% de su salario.
SELECT DISTINCT NUMDE AS [NUMERO DE DEPARTAMENTO]
FROM TEMPLE
WHERE COMIS > SALAR*0.2
Descargar
Enviado por: | Lancelot |
Idioma: | castellano |
País: | España |