Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- SQL I
- Empleados(dni, nombre, apellido, departamento)
- Departamentos(codigo, nombre, presupuesto)
- -- 1.- Obtener todos los datos de los empleados que se apellidan López y los que se apellidan Pérez.
- SELECT * FROM empleados WHERE apellido LIKE 'López' OR LIKE 'Pérez'
- -- 2.- Obtener todos los datos de los empleados que trabajan para el departamento 37 y para el departamento 77.
- SELECT * FROM empleados WHERE departamento = 37 OR departamento = 77
- -- 3.- Obtener todos los datos de los empleados cuyo apellido comience por P.
- SELECT * FROM empleados WHERE apellido LIKE 'P%'
- -- 4.- Obtener el presupuesto total de todos los departamentos.
- SELECT SUM(presupuesto) FROM departamentos
- -- 5.- Obtener el número de empleados en cada departamento.
- SELECT departamento, COUNT(*) AS total FROM empleados GROUP BY departamento
- -- 6.- Obtener un listado completo de empleados, incluyendo el nombre y apellidos del empleado, junto al nombre y presupuesto de su dpto.
- SELECT empleados.* , departamento.nombre, departamento.presupuesto FROM empleados , departamento WHERE empleados.departamento = departamento.codigo
- -- 7.- Obtener los nombres y apellidos de los empleados que trabajen en departamentos, cuyo presupuesto sea mayor de 60k.
- SELECT DISTINCT nombre, apellidos FROM empleados, departamentos WHERE empleados.departamento = departamento.codigo AND presupuesto > 60000
- -- 8.- Obtener los datos de los departamentos cuyo presupuesto es superior al presupuesto medio de todos los departamentos.
- SELECT * drom departamentos HAVING presupuesto > avg(presupuesto)
- -- 9.- Obtener los nombres de los departamentos que tienen más de dos empleados.
- SELECT nombre FROM departamentos, empleados WHERE empleados.departamento = departamento.codigo GROUP BY departamento HAVING COUNT(empleados.nombre)>2
- Almacenes (codigo, lugar, capacidad)
- Cajas (numreferencia, contenido, valor, almacen)
- -- 1.- Obtener el valor medio de las cajas de cada almacen.
- -- 2.- Obtener los códigos de los almacenes en los cuales el valor medio de las cajas sea superior a 150€.
- -- 3.- Obtener el número de referencia de cada caja junto con el nombre de la ciudad en el que se encuentra.
- -- 4.- Obtener los códigos de los almacenes que están saturados (los almacenes donde el numero de cajas es superior a la capacidad)
- Piezas(codigo,nombre)
- Suministra(codigopieza, codProveedor,precio)
- Proveedores(id, nombre)
- -- 1.- Obtener el precio medio al que se nos suministran las piezas
- -- 2.- Obtener los nombres de los proveedores que suministran la pieza 1.
- -- 3.- Obtener los nombre de los proveedores que suministran las piezas más caras, indicando el nombre de la pieza y el precio al que la -- suministran.
- -- 4.- Obtener los nombres de las piezas suministradas por el proveedor cuyo código es HAL.
- Científicos(Dni, nombre)
- Asignado(cientifico, proyecto)
- Proyecto(id, nombre, horas)
- -- 1.- Obtener una relacion completa de los cientificos asignados a cada proyecto. Mostrar DNI, nombre del cientifico, identificador - -- del proyecto y nombre del proyecto.
- SELECT dni, cientifico.nombre, proyecto.id, proyecto.nombre FROM cientificos, asignado, proyecto
- WHERE cientificos.dni = asignado.cientifico AND asignado.proyecto=proyecto.id
- -- 2 .- Obtener el número de proyectos (mayor que 0) al que está asignado cada cientifico (mostrar el DNI y el nombre)
- SELECT *, COUNT(proyecto) FROM cientifico, asignado WHERE cientificos.dni = asignado.cientifico GROUP BY cientifico
- -- 3.- Obtener el DNI y nombre de los cientificos que se dedican a más de un proyecto y cuya dedicación media a cada proyecto sea -- ---- superior a 80 horas.
- SELECT * FROM cientificos, asignado, proyecto
- WHERE cientifico.dni=asignado.cientifico AND asignado.proyecto = proyecto.id
- GROUP BY dni HAVING avg(horas)>80
Advertisement
Add Comment
Please, Sign In to add comment