SELECT, FROM, WHERE, LIKE, BETWEEN, IN – Kurs języka SQL (mySQL) cz. 4b

Część czwarta B kursu języka SQL. Ciąg dalszy polecenia: SELECT, tym razem z parametrami: WHERE, LIKE, BETWEEN oraz IN. Przy ich pomocy możemy wyświetlać konkretne zbiory danych, zawartych w określonych przedziałach.

WHERE – wybór wierszy spełniających określone warunki, np.

SELECT * FROM pracownik WHERE pensja > 1500

Pokaże rekordy pracowników którzy zarabiają powyżej 1500 zł. Istnieje możliwość łączenia warunków za pomocą operatorów OR i AND, np.

SELECT * FROM nazwa_tabeli WHERE ((warunek1) OR (warunek2) AND (warunek3))

Zostaną wyświetlone rekordy które spełniają warunek3 oraz warunek1, lub warunek2.

Przykład:

SELECT * FROM pracownik WHERE (pensja >= 1000) AND (pensja < 1500)

Powyższe polecenie wyświetli pracowników zarabiających 1000 zł i powyżej, nie więcej jednak niż 1499 zł.

W zapytaniach możliwe jest stosowanie następujących operatorów:

Tab. 4.4 Lista operatorów

Operator:

Znaczenie:

=

równy

<

mniejszy niż

>

większy niż

<=

mniejszy lub równy

>=

większy lub równy

<>

różny od

LIKE – wybór wierszy spełniających określone wyrażenie znakowe, np.

SELECT * FROM nazwa_tabeli WHERE nazwa_kolumny LIKE wyrażenie

Przykład 1:

Dla tabeli pracownik możemy wyświetlić wszystkie rekordy pracowników których nazwiska zaczynają się na „Kow”. Polecenie będzie miało następującą postać:

SELECT * FROM pracownik WHERE nazwisko LIKE ‘Kow%’

Przykład 2:

Aby wyświetlić pracowników których numer id (id_pracownika) kończy się frazą 2008 możemy także skorzystać z operatora LIKE.

SELECT * FROM pracownik WHERE id_pracownika LIKE ‘%2008′

Przykład 3:

Jeżeli chcielibyśmy wyświetlić listę pracowników których druga litera imienia to „a” także jest to możliwe:

SELECT * FROM pracownik WHERE imie LIKE ‘_a%’

Poniżej przedstawiona została tabela ze wszelkimi możliwymi znakami specjalnymi, wraz ze znaczeniem i przykładem.

Tab. 4.5 Tabela znaków specjalnych

Znak specjalny:

Znaczenie:

Przykład:

_

Dowolny pojedynczy znak LIKE ‘_c_’ – oznacza wszystkie trzy literowe wyrazy, których środkowa litera to c

%

Dowolny ciąg znaków o dowolnej długości, także zerowej LIKE ‘c%’ – oznacza wszystkie wyrazy o dowolnej długości rozpoczynające się od litery c

[]

Dowolny ciąg znaków z podanego zakresu LIKE ‘[a-g]%’ – oznacza wszystkie wyrazy o dowolnej długości których pierwsza litera należy do zakresu a–g.

[^]

Dowolny ciąg znaków nie pasujący do zakresu LIKE ‘[^a-g]%’ – oznacza wszystkie wyrazy o dowolnej długości których pierwsza litera jest z poza zakresu a–g.

BETWEEN – pozwala przy wykorzystaniu operatora WHERE określić zakresy, np.

SELECT * FROM nazwa_tabeli WHERE (nazwa_kolumny BETWEEN x AND y)

Dla tabeli pracownik przykład wyświetlający rekordy z zakresu gdzie id pracownika jest pomiędzy 12008 a 32008 wyglądać będzie następująco:

SELECT * FROM pracownik WHERE (id_pracownika BETWEEN 12008 AND 32008)

IN – pozwala na wskazanie rekordów należących do określonego zbioru. Poniższe polecenie:

SELECT * FROM pracownik WHERE (id_pracownika IN (12008, 22008))

Wyświetli pracowników których “id_pracownika” to: 12008 oraz 22008.

15 comments to SELECT, FROM, WHERE, LIKE, BETWEEN, IN – Kurs języka SQL (mySQL) cz. 4b

Leave a Reply

  

  

  

You can use these HTML tags

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Current day month ye@r *