CTE untuk posisi TI bergaji tinggi
Pada latihan sebelumnya, Anda membuat sebuah CTE untuk menemukan posisi TI. Sekarang, Anda akan menggabungkan hasil tersebut dengan CTE lain pada tabel salary. Anda akan menggunakan beberapa definisi CTE dalam satu kueri. Perhatikan bahwa koma digunakan untuk memisahkan definisi kueri CTE. Tabel salary memuat informasi tambahan tentang ID dan salary karyawan. Tugas Anda adalah membuat CTE kedua bernama ITsalary dan melakukan JOIN kedua tabel CTE tersebut pada ID karyawan. JOIN harus hanya memilih record yang memiliki nilai yang cocok di kedua tabel. Terakhir, tugasnya adalah mencari hanya karyawan yang berpenghasilan lebih dari 3000.
Latihan ini adalah bagian dari kursus
Kueri Hierarkis dan Rekursif di SQL Server
Petunjuk latihan
- Definisikan CTE kedua,
ITsalary, dengan fieldIDdanSalary. - Temukan gaji di atas
3000. - Gabungkan kedua CTE menggunakan
JOINpadaIDyang cocok dan pilih nama, gaji, serta posisi karyawan yang terpilih.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
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;