SELECT, FROM, TOP, COUNT, ORDER BY – Kurs języka SQL (polecenie SELECT cz. 1)

W niniejszym wpisie omówię polecenie: SELECT (wraz z parametrami: TOP, LIMIT, COUNT oraz ORDER BY) służące do wyświetlania danych, ograniczenia ilości zwracanych rekordów oraz ich sortowania. Składnia polecenia SELECT jest następująca:

SELECT nazwy_kolumn FROM nazwa_tabeli;

W polu nazwy_kolumn podajemy jak sam opis wskazuje nazwy kolumn. Jeżeli jest ich więcej niż jedna, to kolejne rozdzielamy znakiem , – przecinka. Możemy też pobrać dane ze wszystkich kolumn tabeli podając w polu nazwy_kolumn znak * – gwiazdki. W nazwa_tabeli określamy tabelę z której chcemy dane pobrać.

Przejdźmy zatem do przykładów:

tabela pracownicy

Aby pobrać wszystkie dane z tabeli pracownicy posłużymy się poleceniem:

SELECT * FROM pracownicy;

Jeżeli potrzebujemy tylko pobrać trzy kolumny: id, imie oraz nazwisko pracownika składnia polecenia wygląda następująco:

SELECT id, imie, nazwisko FROM pracownicy;

Wraz z poleceniem SELECT stosować możemy kilka parametrów które z pewnością ułatwią nam wyświetlanie rekordów. Oto niektóre z nich:

LIMIT n – gdzie n określa ilość wyświetlanych wierszy, np:

SELECT * FROM pracownicy LIMIT 2;

TOP n – gdzie n określa ilość wyświetlanych wierszy, np:

SELECT TOP 2 * FROM pracownicy;

Oba powyższe zapytania wyświetlą dwa pierwsze rekordy z tabeli pracownicy. Więcej o parametrach określających ilość zwracanych wierszy – wyników przeczytasz we wpisie: TOP, LIMIT, FETCH FIRST – Jak wyświetlić określoną liczbę wierszy w wyniku zapytania SQL?- Kurs SQL

COUNT – zlicza ilość rekordów, np.:

SELECT COUNT(*) FROM pracownicy;

Zapytanie SQL wyświetli ilość wszystkich rekordów w tabeli pracownicy,

ORDER BY – umożliwia sortowanie wyników. Składnia polecenia SELECT z klauzulą ORDER BY jest następująca:

SELECT * FROM nazwa_tabeli ORDER BY kryterium_sortowania;

Rekordy domyślnie wyświetlane są w porządku rosnącym. Aby z góry zdefiniować kryterium sortowania w porządku malejącym należy dodać słówko DESC, zaś w rosnącym ASC, np.

SELECT * FROM pracownicy ORDER BY stawka DESC;
SELECT * FROM pracownicy ORDER BY stawka ASC;

Pierwsze polecenie posortuje rekordy w kolejności w porządku malejącym względem kolumny stawka, zaś drugie w odwrotnej kolejności. Więcej na temat sortowania wyników zapytania znajdziesz we wpisie: ORDER BY – sortowanie wyników zapytania – Kurs SQL.