Eine CTE für hochbezahlte IT-Positionen
In der vorherigen Übung hast du eine CTE erstellt, um IT-Positionen zu finden. Jetzt kombinierst du diese Ergebnisse mit einer weiteren CTE auf der Tabelle salary. Du verwendest mehrere CTE-Definitionen in einer einzigen Abfrage. Beachte, dass ein Komma verwendet wird, um die CTE-Definitionen zu trennen. Die Tabelle salary enthält weitere Informationen zur ID und zum salary der Mitarbeitenden. Deine Aufgabe ist es, eine zweite CTE namens ITsalary zu erstellen und beide CTE-Tabellen über die ID der Mitarbeitenden zu JOINen. Der JOIN soll nur Datensätze auswählen, die in beiden Tabellen übereinstimmende Werte haben. Abschließend sollst du nur Mitarbeitende finden, die mehr als 3000 verdienen.
Diese Übung ist Teil des Kurses
Hierarchische und rekursive Abfragen in SQL Server
Anleitung zur Übung
- Definiere die zweite CTE,
ITsalary, mit den FeldernIDundSalary. - Finde Gehälter über
3000. - Kombiniere die beiden CTEs mit einem
JOINüber übereinstimmendeIDs und wähle den Namen, das Gehalt und die Position der ausgewählten Mitarbeitenden aus.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
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;