9_SQL. Stosowanie opcji wyszukiwania danych SQL Oracle

Teraz poznamy kilka opcji wyszukiwania danych SQL Oracle za pomocą operatorów logicznych: not, or oraz and. 

Skorzystamy z tabeli EMPLOYEES z bezpłatnej bazy Oracle HR dostępnej tutaj: http://www.oracle.com/technetwork/database/express-edition/downloads/index.html

 Klauzula WHERE z operatorami logicznymi 

Teraz przy zastosowaniu opcji wyszukiwania danych SQL Oracle wybierzemy wszystkich pracowników, których zarobki są większe od 12000 z kodem JOB_ID równym „SA_MAN”. Dane zostaną posortowane malejąco.

SELECT *

FROM EMPLOYEES

WHERE SALARY >12000 and JOB_ID = 'SA_MAN'

ORDER BY SALARY DESC;

Otrzymujemy tabelę wynikową:

Teraz wybierzemy wszystkich pracowników, którzy albo mają pensje powyżej 11000 albo pracują w księgowości („FI_ACCOUNT”) i zarabiają powyżej 7 800. Dane zostaną posortowane malejąco.

SELECT *

FROM EMPLOYEES

WHERE SALARY >11000 OR (JOB_ID = 'FI_ACCOUNT' AND SALARY > 7800)

ORDER BY SALARY DESC;

Otrzymujemy tabelę wynikową:

Teraz z jakiś powodów, korzystając z opcji wyszukiwania danych SQL Oracle dodatkowo wyrzucamy z tabeli wynikowej wszystkie osoby, których EMPLOYEE_ID jest mniejsze od 140. Zasada ta ma nie dotyczyć księgowych.

SELECT *

FROM EMPLOYEES

WHERE (SALARY >11000 AND EMPLOYEE_ID > 140 ) OR (JOB_ID = 'FI_ACCOUNT' AND SALARY > 7800)

ORDER BY SALARY DESC;

Otrzymujemy tabelę wynikową:

Znaki * oraz % zastępują dowolny ciąg znaków.

Znaki: _ , #, ? zastępują tylko jeden znak.

Znak ! oznacza zaprzeczenie, symbolizuje nierówność podobnie jak znak <>.