Hola a todos, tengo la posibilidad de ingresar a un trabajo, el problema es que me dan el siguiente test para ingresar y yo soy muy novato en MYSQL, necesitaría si alguien podría ayudarme con las siguientes preguntas, POR FAVOR!!! al menos una idea no la resolución completa no quiero molestar.
GRACIAS!!!!!
-------------------------------------------------------------------
Dada la estructura de la tabla y la fila de datos a continuación, responder a las preguntas de seguimiento.
mysql> explain user_skill;
+--------------------------+------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+--------------------------+------------------+------+-----+---------+----------------+
| user_skill_id | int(11) | | PRI | NULL | auto_increment |
| user_skill_last_modified | timestamp(14) | YES | | NULL | |
| user_skill_date_created | datetime | YES | | NULL | |
| user_id | int(11) | YES | | NULL | |
| skill_name | char(255) | YES | | NULL | |
| skill_level | char(255) | YES | | NULL | |
| skill_usage | char(255) | YES | | NULL | |
| skill_last_used | char(255) | YES | | NULL | |
| user_skill_endorsed | tinyint(1) | YES | | 0 | |
+--------------------------+------------------+------+-----+---------+----------------+
9 rows in set (0.00 sec)
mysql> *************
+--------------------+-------------------+--------------------+
| user_firstname | user_lastname | skill_name |
+--------------------+-------------------+--------------------+
| Kim | Simpson | PHP |
| Kim | Simpson | Perl |
| Kim | Simpson | Microsoft Word |
| Kim | Simpson | Microsoft Access |
| Kim | Simpson | Accounting/Billing |
| Kim | Simpson | Java |
| Kim | Simpson | SQL |
| Kim | Simpson | CSS |
| Kim | Simpson | OO Programming |
| Kim | Simpson | Microsoft Excel |
+--------------------+-------------------+--------------------+
10 rows in set (0.00 sec)
Preguntas:
1. Suponiendo que los datos almacenados en skill_name en el user_skill cuadro podría repetirse para diferentes usuarios, ¿qué cambios haría usted a la base de datos para normalizar la skill_name y reducir repetidas de almacenamiento? Mostrar la estructura de la nueva tabla (s).
2. Recrear la consulta que regresaron los 10 filas de los datos suministrados. Especular en las mesas que sería necesario que no se muestran aquí.
-------------------------------------------------------------------
2. Dada la siguiente pregunta, ¿cómo puede ser optimizado? Lista todos los supuestos:
select c.* FROM companies AS c JOIN users AS u USING(companyid) JOIN jobs AS j USING(userid) JOIN useraccounts AS ua USING(userid) WHERE j.jobid = 123;
------------------------------------------------------------------
3. Respuesta el seguimiento de las cuestiones sobre la base de los siguientes:
explain SELECT * FROM job JOIN job_postings ON (job.jobid = job_postings.jobid) JOIN companies ON companies.companyid = job.companyid WHERE job.jobid IN (16189,16188);
+--------------+-------+-------------------+---------+---------+-------+------+-------------+
| table | type | possible_keys | key | key_len | ref | rows | Extra |
+--------------+-------+-------------------+---------+---------+-------+------+-------------+
| job | const | PRIMARY,companyid | PRIMARY | 4 | const | 2 | |
| companies | const | PRIMARY | PRIMARY | 4 | const | 2 | |
| job_postings | ref | PRIMARY | PRIMARY | 4 | const | 8 | Using where |
+--------------+-------+-------------------+---------+---------+-------+------+-------------+
3 rows in set (0.00 sec)
Con las preguntas
Explicar las opciones que se pueden hacer a la mencionada consulta.
¿Cuántas filas serán analizadas por esta consulta?
-------------------------------------------------------------------
MIL GRACIAS A TODOS, EN LO QUE PUEDAN AYUDARME POR MÁS PEQUEÑA QUE SEA, ESTARÉ ETERNAMENTE AGRADECIDO!!!!!!