Diferència entre revisions de la pàgina «M2 - Bases de dades / Exercicis UF2: Llenguatges SQL / Solucions T1-HR»

De wikiserver
Dreceres ràpides: navegació, cerca
 
(Hi ha 5 revisions intermèdies del mateix usuari que no es mostren)
Línia 1: Línia 1:
'''Parte 1'''
 
 
 
1) La siguiente sentencia SELECT se ejecuta correctamente:
 
1) La siguiente sentencia SELECT se ejecuta correctamente:
 
<pre>
 
<pre>
Línia 13: Línia 11:
 
FROM job_grades;
 
FROM job_grades;
 
</pre>
 
</pre>
'''Verdadero'''/Falso
+
Verdadero/'''Falso'''. La tabla job_history no existe.
 +
 
 
3) En la siguiente sentencia hay cuatro errores de codificación. ¿Puede identificarlos?
 
3) En la siguiente sentencia hay cuatro errores de codificación. ¿Puede identificarlos?
 
<pre>
 
<pre>
SELECT employee_id, last_name,
+
SELECT employee_id, last_name  
 
sal x 12 ANNUAL SALARY
 
sal x 12 ANNUAL SALARY
 
FROM employees;
 
FROM employees;
Línia 25: Línia 24:
 
:* '''Falta una coma tras la columna LAST_NAME.'''
 
:* '''Falta una coma tras la columna LAST_NAME.'''
  
'''Parte 2'''
+
4) Determine la estructura de la tabla DEPARTMENTS y su contenido.
 
 
Se le ha contratado como programador de SQL para Acme Corporation. Su primera tarea es crear algunos informes según los datos de las tablas de recursos humanos.
 
 
 
4) Su primera tarea es determinar la estructura de la tabla DEPARTMENTS y su contenido.
 
  
 
::a. Para determinar la estructura de la tabla DEPARTMENTS:
 
::a. Para determinar la estructura de la tabla DEPARTMENTS:
Línia 45: Línia 40:
 
DESCRIBE employees
 
DESCRIBE employees
 
</pre>
 
</pre>
El departamento de recursos humanos desea que una consulta muestre el apellido, ID de cargo, fecha de contratación e ID de empleado de cada empleado, con el ID de empleado en primer lugar. Proporcione un alias STARTDATE para la columna HIRE_DATE. Guarde la sentencia SQL en un archivo con el nombre lab_01_05.sql para distribuirlo al departamento de recursos humanos.
+
 
 +
6) El departamento de recursos humanos desea una consulta para mostrar el apellido, ID de cargo, fecha de contratación e ID de empleado de cada empleado, con el ID de empleado en primer lugar. Proporcione un alias STARTDATE para la columna HIRE_DATE.  
 
<pre>
 
<pre>
 
SELECT employee_id, last_name, job_id, hire_date StartDate
 
SELECT employee_id, last_name, job_id, hire_date StartDate
Línia 51: Línia 47:
 
</pre>
 
</pre>
  
6) Pruebe la consulta en el archivo lab_01_05.sql para asegurarse de que se ejecuta correctamente.
+
7) El departamento de recursos humanos desea una consulta para mostrar todos los ID de cargo únicos de la tabla EMPLOYEES .
 
<pre>
 
<pre>
SELECT employee_id, last_name, job_id, hire_date StartDate
+
SELECT DISTINCT job_id
 +
FROM employees;
 +
</pre>
 +
 
 +
8) El departamento de recursos humanos desea cabeceras de columna más descriptivas para su informe sobre empleados. Modifique la cosnusta del apartado 6 Asignando a las cabeceras de columna los nombres Emp # , Employee , Job y Hire Date , respectivamente.
 +
<pre>
 +
SELECT employee_id "Emp #", last_name "Employee",
 +
      job_id "Job", hire_date "Hire Date"
 
FROM employees;
 
FROM employees;
 
</pre>
 
</pre>
7) El departamento de recursos humanos desea una consulta para mostrar todos los ID de cargo únicos de la tabla EMPLOYEES .
+
 
 +
9) El departamento de recursos humanos ha solicitado un informe de todos los empleados y sus ID de cargo. Muestre el apellido concatenado con el ID de cargo (separado por una coma y un espacio) y asigne a la columna el nombre Employee and Title.
 +
<pre>
 +
SELECT last_name||', '||job_id "Employee and Title"
 +
FROM employees
 +
</pre>
 +
 
 +
10) Para familiarizarse con los datos de la tabla EMPLOYEES , cree una consulta para mostrar todos los datos de dicha tabla. Separe cada salida de la columna por una coma. Asigne a la columna el título THE_OUTPUT .
 
<pre>
 
<pre>
SELECT DISTINCT job_id
+
SELECT employee_id || ',' || first_name || ',' || last_name
 +
      || ',' || email || ',' || phone_number || ','|| job_id
 +
      || ',' || manager_id || ',' || hire_date || ','
 +
      || salary || ',' || commission_pct || ',' || department_id
 +
      THE_OUTPUT
 
FROM employees;
 
FROM employees;
 
</pre>
 
</pre>

Revisió de 19:49, 19 set 2022

1) La siguiente sentencia SELECT se ejecuta correctamente:

SELECT last_name, job_id, salary AS Sal
FROM employees;

Verdadero/Falso

2) La siguiente sentencia SELECT se ejecuta correctamente:

SELECT *
FROM job_grades;

Verdadero/Falso. La tabla job_history no existe.

3) En la siguiente sentencia hay cuatro errores de codificación. ¿Puede identificarlos?

SELECT employee_id, last_name 
sal x 12 ANNUAL SALARY
FROM employees;
  • La tabla EMPLOYEES no contiene ninguna columna denominada sal . La columna se denomina SALARY.
  • El operador de multiplicación es *, no x, como se muestra en la línea 2.
  • El alias ANNUAL SALARY no puede incluir espacios. El alias debe ser ANNUAL_SALARY o se deben incluir entre comillas dobles.
  • Falta una coma tras la columna LAST_NAME.

4) Determine la estructura de la tabla DEPARTMENTS y su contenido.

a. Para determinar la estructura de la tabla DEPARTMENTS:
DESCRIBE departments
b. Para ver los datos que contiene la tabla DEPARTMENTS:
SELECT *
FROM departments;

5) Determine la estructura de la tabla EMPLOYEES .

DESCRIBE employees

6) El departamento de recursos humanos desea una consulta para mostrar el apellido, ID de cargo, fecha de contratación e ID de empleado de cada empleado, con el ID de empleado en primer lugar. Proporcione un alias STARTDATE para la columna HIRE_DATE.

SELECT employee_id, last_name, job_id, hire_date StartDate
FROM employees;

7) El departamento de recursos humanos desea una consulta para mostrar todos los ID de cargo únicos de la tabla EMPLOYEES .

SELECT DISTINCT job_id
FROM employees;

8) El departamento de recursos humanos desea cabeceras de columna más descriptivas para su informe sobre empleados. Modifique la cosnusta del apartado 6 Asignando a las cabeceras de columna los nombres Emp # , Employee , Job y Hire Date , respectivamente.

SELECT employee_id "Emp #", last_name "Employee",
       job_id "Job", hire_date "Hire Date"
FROM employees;

9) El departamento de recursos humanos ha solicitado un informe de todos los empleados y sus ID de cargo. Muestre el apellido concatenado con el ID de cargo (separado por una coma y un espacio) y asigne a la columna el nombre Employee and Title.

SELECT last_name||', '||job_id "Employee and Title"
FROM employees

10) Para familiarizarse con los datos de la tabla EMPLOYEES , cree una consulta para mostrar todos los datos de dicha tabla. Separe cada salida de la columna por una coma. Asigne a la columna el título THE_OUTPUT .

SELECT employee_id || ',' || first_name || ',' || last_name
       || ',' || email || ',' || phone_number || ','|| job_id
       || ',' || manager_id || ',' || hire_date || ','
       || salary || ',' || commission_pct || ',' || department_id
       THE_OUTPUT
FROM employees;