ComenzarEmpieza gratis

Una CTE para puestos de TI con altos salarios

En el ejercicio anterior, creaste una CTE para encontrar puestos de TI. Ahora vas a combinar esos resultados con otra CTE sobre la tabla salary. Usarás varias definiciones de CTE en una sola consulta. Fíjate en que se usa una coma para separar las definiciones de las CTE. La tabla salary contiene más información sobre el ID y el salary de las personas empleadas. Tu tarea es crear una segunda CTE llamada ITsalary y hacer un JOIN de ambas CTE por el ID de las personas empleadas. El JOIN debe seleccionar solo los registros con valores coincidentes en ambas tablas. Por último, debes encontrar únicamente a quienes ganan más de 3000.

Este ejercicio forma parte del curso

Consultas jerárquicas y recursivas en SQL Server

Ver curso

Instrucciones del ejercicio

  • Define la segunda CTE, ITsalary, con los campos ID y Salary.
  • Encuentra salarios superiores a 3000.
  • Combina las dos CTE usando un JOIN por ID coincidentes y selecciona el nombre, el salario y el puesto de las personas seleccionadas.

Ejercicio interactivo práctico

Prueba este ejercicio y completa el código de muestra.

WITH ITjobs (ID, Name, Position) AS (
    SELECT 
  		ID, 
  		Name,
  		Position
    FROM employee
    WHERE Position like 'IT%'),
    
-- Define the second CTE table ITsalary with the fields ID and Salary
___ (___, ___) AS (
    SELECT
        ID,
        Salary
    FROM Salary
  	-- Find salaries above 3000
    WHERE ___ ___ 3000)
    
SELECT 
	ITjobs.NAME,
	ITjobs.POSITION,
    ITsalary.Salary
FROM ITjobs
    -- Combine the two CTE tables the correct join variant
    ___ ___ ITsalary
    -- Execute the join on the ID of the tables
    ON ITjobs.ID = ITsalary.ID;
Editar y ejecutar código