background image

Instrukcja SELECT 

SELECT * FROM tab_name; 

wyświetla wszystkie kolumny z tabeli tab_name

SELECT tab_name.col_1, tab_name.col_2 FROM tab_name; 

lub w skrócie: 

SELECT col_1, col_2 FROM tab_name; 

wyświetla kolumny col_1col_2 z tabeli tab_name; 

działa dla dowolnej liczby kolumn, oddzielonych przecinkiem. 

Klauzula DISTINCT 

SELECT DISTINCT tab_name.col_1,tab_name.col_2 FROM 
tab_name; 

Wyświetla kolumny col_1col_2 z tabeli tab_name. Powtarzające się wiersze są 
wyświetlane tylko raz.  

Klauzula AS 

SELECT tab_name.col_1, tab_name.col_2 AS new_col_name 
FROM tab_name; 

lub  

SELECT tab_name.col_1, tab_name.col_2 AS „new col name” 
FROM tab_name; 

Wyświetla kolumny col_1 oraz col_2 zamieniając nagłówek drugiej kolumny na 
new_col_name (new col name). Nazwa kolumny musi być jednym wyrazem lub 
naleŜy ująć ją w cudzysłów. 
Nowa nazwa obowiązuje tylko w tabeli wynikowej, przy kolejnych zapytaniach 
naleŜy uŜywać niezmienionej nazwy kolumny. Nazwa kolumny w tabeli w bazie nie 
ulega zmianie! 

Klauzula ORDER BY 

SELECT tab_name.col_1, tab_name.col_2 FROM tab_name ORDER 
BY tab_name.col_1 ASC

Wyświetla kolumny col_1 i col_2 z tabeli tab_name posortowane rosnąco względem 
pierwszej kolumny. Ten porządek sortowania jest domyślny. 

 

background image

SELECT tab_name.col_1, tab_name.col_2 FROM tab_name ORDER 
BY tab_name.col_1 DESC

Wyświetla kolumny col_1 i col_2 z tabeli tab_name posortowane malejąco względem 
pierwszej kolumny. 

 

SELECT tab_name.col_1, tab_name.col_2 FROM tab_name ORDER 
BY tab_name.col_1, tab_name.col_2 DESC; 

Wyświetla kolumny col_1 i col_2 z tabeli tab_name posortowane rosnąco względem 
pierwszej kolumny, a przy powtarzających się danych w col_1 malejąco względem 
drugiej. 

Połączenie klauzul AS i ORDER BY  

SELECT col_name AS new_col_name FROM tab_name ORDER BY 
new_col_name; 
 
SELECT tab_name.col_1, tab_name.col_2 AS 2 FROM tab_name 
ORDER BY 2; 

Obliczenia 

SELECT n*k

 

 

wynik to n*k 

SELECT exp(n)

   

wynik to wartość liczby e podniesionej do n-tej potęgi 

SELECT log(n)

   

wyświetla wartość logarytmu naturalnego z liczby n 

SELECT power(n,k)

 

wyznacza wartość liczby n, podniesiona do k-tej potęgi  

 

SELECT tab_name.col_1, tab_name.col_2*tab_name.col_3 AS 
new_tab_name.col_3 FROM tab_name ORDER BY 
new_tab_name.col_3;  

Klauzula WHERE 

SELECT tab_name.columnss FROM tab_name WHERE conditions; 

Wyświetla rekordy spełniające warunki conditions.  

Operatory porównania 

 

równy  

 

mniejszy 

<=   mniejszy lub równy  

 

większy  

>=   większy lub równy 

background image

<>   róŜny (obsługiwany równieŜ jako !=)  

 
tab_name.col IS 
NULL  

prawdziwe, gdy w kolumnie tab_name.col nie 
istnieje wartość  

tab_name.col IS NOT 
NULL  

prawdziwe, gdy podano wartość w kolumnie 
tab_name.col 

NOT, AND, OR – negacja, logiczny iloczyn, suma logiczna. 

BETWEEN...AND... - szukanie wartości z zadanego przedziału 

SELECT k1, k2, k3 FROM tab_name WHERE k2 BETWEEN min_value AND 
max_value; 

Wyświetlenie wierszy, w których wartości w podanej kolumnie naleŜą do zadanego 
przedziału, wraz z wartościami granicznymi.  

IN(zbiór) - szukanie w zbiorze podanych wartości  

SELECT k1, k2, k3 FROM tab_name WHERE k2 IN (w1, w2, ...);  

Wyświetla wiersze, w których w wybranej kolumnie wartość naleŜy do pewnego zbioru o 
elementach w1w2...  

LIKE... - szukanie względem wzorca tekstowego  

SELECT k1, k2, k3 FROM tab_name WHERE k2 LIKE 'pattern_text'; 

Wyszukiwanie w wybranych kolumnach tekstowych wartości, zgodne ze wzorcem 
pattern_text.  

Znaki specjalne występujące we wzorcu  

% zastępuje dowolny (takŜe pusty) ciąg znaków 

_ zastępuje dokładnie jeden znak 

   

   

SELECT k1, k2, k3 FROM tab_name WHERE k2 LIKE 'pattern' ESCAPE 
'escape_sign'; 

Zapis rozszerzony umoŜliwiający wyszukanie testów, zawierających w treści znak % oraz _.  
Jeśli we wzorcu pattern znaki % lub _  zostaną poprzedzone znakiem ucieczki escape_sign, 
wówczas będą traktowane jako fragmenty wzorca, a nie jako znaki specjalne.