Zaczynamy od zera

Zadanie 2

Tabela Employees (HR).

  1. a) Policz wartość wynagrodzenia powiększoną o premię (commission_pct). Weź pod uwagę, że niektórzy nie mają premii (wtedy commission_pct ma wartość NULL).
  2. b) Policz, który pracownik ile dostaje premii (jak wyżej – bierzemy pod uwagę istnienie NULL)
  3. c) Do zestawienia z punktu b) dodaj obliczony staż pracy w latach (by wyniki były jednolite zakładamy, że wszyscy pracowali do 1 sierpnia 2008).

Schemat: HR, Tabela: Employees, Kolumny: First_Name, Last_Name, Salary, Commission_pct, Hire_Date, Wynik: 107 rows (a, b, c)

Rozwiązanie
  1. a) SELECT first_name, last_name, salary * (1 + NVL(COMMISSION_PCT, 0)) as FullSalary

FROM Employees;

  1. b) SELECT first_name, last_name, salary * NVL(COMMISSION_PCT, 0) as Premia

FROM Employees;

  1. c) SELECT first_name, last_name, salary * NVL(COMMISSION_PCT, 0) as Premia,

TRUNC((to_date(’2008-08-01′, 'YYYY-MM-DD') – Hire_Date) / 365, 1) as Staz_Pracy_Lata

FROM Employees

ORDER BY Premia DESC, Staz_Pracy_Lata DESC;

[collapse]

Alexandretta

Kobieta gracz, która wie czego chce i dąży zawsze do tego by osiągnąć swój cel. Po godzinach pracy, z zapałem i piekielnymi ognikami w oczach biega po lochach i tłucze bogu ducha winne zombie i inne szkielety. Miłośniczka wszelkiej maści cRPG z wielką ilością współczynników, w których czuje się najlepiej. Notoryczne problemy z wyborem klasy i rasy bo wszystko jest fajne... W chwilach zwątpienia zatraca się przy dźwiękach mieczy, roztrzaskiwanych tarcz i okrzyków bojowych, słuchając wiking metalu z zimnej, niegościnnej, odległej Skandynawii. Czasem zdarzy jej się pograć w jakąś strategię bądź nawet w FPP, ale tylko na easy, żeby nie psuć sobie niepotrzebnie nerwów.

Related Articles

Back to top button