Zadanie 2.

Z tabeli Employees wybierz:

a) wszystkich o job_id równym SA_REP

b) z wynagrodzeniem pomiędzy 2000 a 5000

c) zatrudnieni przed rokiem 2003

d) tych, którzy nie pracują w departamentach o ID 50 oraz 80

e) tych, których numer telefonu zawiera dwie cyfry 7 (w dowolnym miejscu)

Schemat: HR, Tabela: Employees, Kolumny: Job_ID, Salary, Hire_Date, Department_ID, Phone_Number, Wynik: a) 30 rows, b) 49 rows c) 8 rows d) 27 rows e) 6 rows

Rozwiązanie

a) SELECT *
FROM EMPLOYEES
WHERE job_id = 'SA_REP';

b) SELECT *
FROM EMPLOYEES
WHERE salary BETWEEN 2000 AND 5000;

c) SELECT *
FROM EMPLOYEES
WHERE HIRE_DATE < '03/01/01'; --RR/MM/DD

d) SELECT *
FROM EMPLOYEES
WHERE DEPARTMENT_ID <> 50 AND DEPARTMENT_ID <> 80;

e) SELECT *
FROM EMPLOYEES
WHERE PHONE_NUMBER LIKE '%7%7%';

[collapse]
  • Tel Efon

    Witam,
    Wydaje mi się, że w odpowiedzi D jest błąd. W poleceniu napisane jest aby wyświetlić tych którzy nie pracują w dziale id 50 ANI! 80 także dwa warunki powinny być spełnione. Uważam, że powinien być użyty operator AND a nie jak w rozwiązaniu OR.
    Prawda?

    Pozdrawiam Piotrek

    • Alexandretta

      Zgadza się, wkradł się błąd. Poprawione. Dzięki za zwrócenie uwagi.