
Teraz omówimy operatory języka SQL przydatne przy porównaniach wszystkich typów danych.
Operatory języka SQL to: between … and, in, like, is null
Operator between … and sprawdza czy wartość znajduje się w wyznaczonym przedziale.
Skorzystamy z tabeli EMPLOYEES z bezpłatnej bazy Oracle HR dostępnej tutaj: http://www.oracle.com/technetwork/database/express-edition/downloads/index.html
Znajdźmy pracowników zarabiających od 2 600 do 3 000.
SELECT *
FROM EMPLOYEES
WHERE SALARY BETWEEN 2600 AND 3001;
Otrzymujemy tabelę wynikową:
Operator IN sprawdza czy wskazana wartość znajduje się w bazie. Operator wskazuje kto spełnia określone wartości.
Wybierzmy wszystkie osoby które zarabiają dokładnie 3 000.
SELECT *
FROM EMPLOYEES
WHERE SALARY IN 3000;
Otrzymujemy tabelę wynikową:
Operator LIKE pozwala wyszukać wartości zgodne z podanym wzorcem.
Znaki * oraz
Znaki: _ , #, ? zastępują tylko jeden znak.
Znak ! oznacza zaprzeczenie, symbolizuje nierówność podobnie jak znak <>.
Wybierzmy wszystkich pracowników których imie zaczyna się na L.
SELECT *
FROM EMPLOYEES
WHERE (FIRST_NAME LIKE '
Otrzymujemy tabelę wynikową:
Teraz wyszukujemy osoby, które drugą literę w imieniu mają o.
SELECT *
FROM EMPLOYEES
WHERE (FIRST_NAME LIKE '_
Stosowanie symboli wieloznacznych
Operator IS NULL pozwala wyszukać te rekordy które zawierają wartości nieokreślone null.
Znajdźmy wszystkich pracowników, którzy nie mają określonych wartości w kalumnie COMMISSION_PCT i zarabiają więcej niż 10 000.
SELECT *
FROM EMPLOYEES
WHERE COMMISSION_PCT IS NULL AND SALARY > 10000;
Otrzymujemy tabelę wynikową:
Operatory języka SQL mają określoną hierarchię. Najpierw wykonywane są operacje w nawiasach, potem wykonywane są operatory =, <>, <=, <, >. Potem wykonywane są operacje zawierające operatory: between … and, in, like, is null. Na końcu realizowane są operatory negacji not, potem operator koniunkcji and i operator alternatywy or.