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:
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.