MySQL Forums
Forum List  »  Spanish

Ejercicios MySQL DDL DML
Posted by: Nadir Kholti
Date: May 26, 2015 08:43PM

Hola chicos, soy nuevo en el foro. De hecho estoy aquí por una necesidad urgente. Os cuento el caso: soy un estudiante de un superior de administración de sistemas informáticos y redes. La questión es que estoy terminando el ultimo curso y para sacarme el curso he de tener todas las materias de todos los cursos aprobadas. Ahora a falta de 1 semana y media para terminar me han comentado que tengo una materia pendiente (gestión de base de datos). Para poder aprobar esta materia he de presentar una práctica con MySQL que se compone de 50 ejercicios de DDL y DML. La questión es que no tengo frescos los conceptos para poder sacar la práctica y además carezco de tiempo por culpa de otras materias que estoy cursando. En fin, he decidido recurrir al foro para ver si hay alguien que se ofrezca voluntario y tenga un poco mas de práctica que yo con MySQL y me ayudara a realizar las consultas. De este modo me ayudaría a mi y a todos los futuros visitantes de este hilo...
Dejo aquí debajo las preguntas, donde solo hay que contestar con la consulta correcta (la base de datos que se utiliza es la que viene por defecto con Mysql. La de la tabla Employees y demás...). Gracias de antemano.

1 Muestra todas las mesas de la base de datos. Muestra la estructura de cada una de las mesas de la base de datos.
2 Crea una consulta para mostrar los salarios de los empleados sin repetir.
3 Muestra el apellido concatenado con el identificador de cargo, separados por una coma y un espacio, y denomina a la
columna: Trabajador y cargo.
4 Actualiza las comisiones de todos los empleados que cobran más de 3000 € a 0,2.
5 Borra los empleados que no tienen comisiones.
6 Muestra el nombre, el salario y el identificador de cargo de los empleados que ganan entre 4000€ y 15000€ y están en
el departamento 10 o 60. Cambia el nombre de las columnas al Catalán.
7 Muestra el nombre, el apellido y la fecha de contratación de todos los empleados contratados en 1994 y en 1995.
8 Muestra el apellido y el cargo de todos los empleados que tienen director. Ordena *ascendenment por el apellido
9 Muestra el apellido, el salario, la comisión, el resultado de aplicar la comisión al salario y los años que trae a la empresa para
todos los empleados que traen más de veinte años en la empresa. Ordena los datos en orden descendente de salario y comisiones.

10 Muestra el nombre y el apellido de tos los empleados que tengan la @e como tercera letra al nombre y una n a cualquier lugar
del apellido.
11 Muestra el apellido de todos los empleados que tengan una a o una @e en el apellido
12 Muestra el apellido, el cargo y el salario de todos los empleados que sean programadores (*IT_*PROG) o encargados de *stock
(*ST_*CLERK) y que los salario no sean superiores a 5500€. Ordena *descendentment por el cargo y después por el apellido
13 Muestra todos los empleados que tengan en su nombre o apellido una A mayúscula.
14 Haz una consulta que visualice el salario mayor, menor, la suma y la media de todos los trabajadores. Etiqueta
adecuadamente las columnas. Redondea hasta el número entero más próximo.
15 Haz una consulta que muestre los diferentes salarios con el número de empleados que lo cobran.
16 Modifica la consulta anterior para mostrar aquellos salarios que sueño cobrados por dos o más empleados.
17 Muestra el número de pasos que existen por cada región.
18 Visualiza el número de director y el salario del trabajador con mayor sueldo para este director
19 Muestra el número de trabajadores contratados cada año.
20 Muestra el código de todos los departamentos que tengan más de dos empleados
21 Crea una consulta para mostrar los números del empleado y los apellidos de todos los empleados que ganan menos
que el salario medio. Ordena los resultados por salario en orden ascendente.
22 Muestra el nombre de los departamentos en los que todos sus empleados ganan más de 5000€
23 Muestra los países en los cuales algún empleado que trabaje en un departamento ubicado en este país cobra más de 15000€

24 Muestra el nombre de los departamentos en los cuales sólo hay personas contratadas en 1987.
25 Muestra el nombre de los empleados que trabajan en algún departamento ubicado en la provincia de Washington
26 Muestra el nombre de los países que sólo tienen ubicados departamentos donde todos sus empleados cobran más de 5000€
27 Muestra el apellido y el salario de todos los empleados que tienen como hacia King
28 Escribe una consulta para visualizar el apellido del trabajador y el nombre del país donde trabajan para todos los trabajadores
29 Crea un listado único con todos los cargos que hay al departamento 90. Incluye la ubicación del departamento en
el resultado.
30 Escribe una consulta para mostrar el apellido del trabajador, el nombre del departamento, el identificador de ubicación y la ciudad
de todos los empleados que reciben comisión y que fueron contratados antes de 1990.
31 Visualiza el apellido del trabajador y el nombre del departamento para tos los trabajadores que tengan una g minúscula
en el apellido.
32 Visualiza el salario del empleado con el salario de su director. Etiqueta las columnas para que sea más claro el
resultado.
33 Visualiza la estructura de la mesa *JOB_GRADAS. A continuación crea una consulta en la que se pueda visualizar el
nombre, el cargo, el nombre del departamento, el salario y el grado de todos los trabajadores.
34 Crea uno consulta utilizando el natural *join que te liste las ubicaciones donde hay departamentos tienes que mostrar el *id, la calle,
el código postal, la ciudad y el nombre del país. Haz la misma consulta utilizando el *join y la *cláusula *using. Haz
la misma consulta con el *join y el dónde. Compara los resultados de las consultas tienen que ser los mismos.
35 Utilizando la mesa JOBS crea una consulta que te indique: nombre y apellido de un trabajador, su identificador de trabajo,
el nombre de su trabajo y el salario mínimo que podría cobrar.
a) Utilizando natural *join
b) utilizando *join y *using
c) utilizando *join y donde
d) sin utilizar ninguno de las anteriores.
@e) Utilizando el cross *join. Analiza el resultado que obtienes. Explica porque obtienes el resultado.
36 Muestra el nombre de aquellos empleados que trabajan en Europa, cobran más de 6000€ y han sido contratados antes
de 1999.
37 Muestra los nombres de los departamentos junto a la región a la que pertenecen, en la misma consulta tienen que aparecer
también las regiones que no tienen asignados departamentos.
38 Muestra todos los datos de los empleados y los departamentos a los cuales están asignados. También tienen que aparecer a la
misma consulta, los empleados sin departamento y los departamentos sin empleados.
39 Inserta los registros que hagan falta (con datos coherentes) porque haya empleados en Asia y *Africa.
40 Crea una mesa nueva llamada JOBS2 y vuelca en esta mesa con una sola sentencia todos los datos de la mesa
JOBS.
41 Cruz una mesa nueva denominada EMPLEADOS_*IT, vuelca en esta mesa con una sola sentencia todos los empleados
que trabajan al departamento *IT.
42 Actualiza el salario de todos los empleados de *Canada un 30%.
43 Envía a un fichero llamado empleados_*dep.txt todos los datos de los empleados y sus departamentos.
44 De los departamentos que no tengan *manager_*id, establece como *manager_*id en el empleado con apellido King.
45 Aquellos departamentos que empiecen para cámbiaselos el nombre por *RRHH.
46 Borra todos los empleados que trabajan en América.
47 Añade una columna a la mesa de los departamentos denominada abanicas, haz que su valor por defecto sea 0.
48 Elimina de la estructura de la mesa empleados el campo *phone_*number.
49 En la mesa de los empleados modifica el tipo del campo *last_*name a *varchar(40).
50 Restaura la base de datos tal y como estaba al inicio. Muestra todos los pasos que has hecho además muestra también el
contenido y las estructuras de las mesas.

Options: ReplyQuote


Subject
Views
Written By
Posted
Ejercicios MySQL DDL DML
6011
May 26, 2015 08:43PM
1346
May 26, 2015 11:45PM


Sorry, you can't reply to this topic. It has been closed.

Content reproduced on this site is the property of the respective copyright holders. It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.