SQL,PL/SQL – Grupowanie danych – Oracle 10/11 cz.11

1) Group By: Dzięki grupowaniu jesteśmy w stanie ograniczyć dane do takich, które posiadają wspólny mianownik. Po ograniczeniu zakresu danych możemy skorzystać z funkcji agregujących. Wybierzemy tych Mangerów, którzy mają ID różne od null: SELECT location_id FROM departments WHERE manager_id is not null; Wyświetlimy numery lokalizacji oraz ilość departamentów, które posiadają przydzielonego managera: SELECT location_id, count(*)  from departments where manager_id is not null GROUP BY location_id; Na koniec pokażemy te

SQL,PL/SQL – Funkcje agregujące – Oracle 10/11 cz.10

Następną istotną rzeczą w SQL są tzw. funkcje agregujące, dzięki nim otrzymujemy jeden wynik z kilku danych, np. sumę pensji naszych pracowników, czy też ich średnią pensję. 1) AVG-średnia: Poniższej zapytanie pokazujące średnią pensję naszych pracowników: SELECT ROUND(AVG(salary)) AS „Średnia pensja” FROM employees; 2) COUNT-Suma wierszy: Przy pomocy Count możemy zliczyć wystąpienia wierszy zgodnych z zapytaniem: SELECT count(*) AS „liczba pracujących” FROM employees; 3) MIN/MAX: Działanie jest raczej oczywiste: SELECT

SQL,PL/SQL – Data – Oracle 10/11 cz.9

Oracle daje nam możliwość wykorzystania wbudowanych funkcji, jedną z nich jest ta dotycząca dat. W bazie istnieje tabela o nazwie DUAL, z której możemy w czasie rzeczywistym pobierać dane dotyczące naszej bazy. Na dacie możemy również wykonywać obliczenia dokładnie tak samo jak na zwykłych liczbach. Możemy pokazać obecną datę (RRRR/MM/DD) przy pomocy: SELECT sysdate FROM DUAL; Poniższe zapytanie w wyniku poda nam zaokrągloną wartość reprezentującą różnicę w latach pomiędzy dzisiejszą

SQL,PL/SQL – Funkcje numeryczne – Oracle 10/11 cz.8

Wiele czynności z danymi nie byłoby możliwe bez funkcji matematycznych, choćby zaokrąglenie liczb. Poniżej najpopularniejsze funkcje numeryczne: 1) ROUND (x,[y]) – zaokrąglenie wyrażenia X do parametru Y, który określa liczbę miejsc po przecinku, jeżeli parametr Y jest pusty miejsc po przecinku nie będzie. 2) TRUNC (x,[y]) – przy jego pomocy wyrażenie X możemy pozbawić kilku miejsc po przecinku, tak jak powyżej jeżeli Y nie ma wartości domyślnie wstawiane jest 0,

SQL,PL/SQL – Funkcje znakowe (UPPER, LOWER itd.)- Oracle 10/11 cz.7

Funkcje znakowe w przeważającej ilości pomagają uatrakcyjnić wyniki naszych zapytań niż mają nam ułatwić ich wykonywanie, jednak czasami pomagają nam stworzyć ładniejsze raporty dla szefów;) 1) UPPER – przy jej pomocy w wynikach naszych zapytań pojawią się tylko i wyłącznie duże litery. SELECT LAST_NAME, UPPER(LAST_NAME) FROM EMPLOYEES; 2) LOWER – przeciwieństwo w/w  funkcji zamienia wszystkie znaki na małe. SELECT LAST_NAME, LOWER(LAST_NAME) FROM EMPLOYEES; 3) INITCAP – zmienia jedynie pierwszy znak

SQL,PL/SQL – Filtrowanie wyników zapytań (WHERE, BETWEEN, LIKE) – Oracle 10/11 cz.6

Tworząc zapytania do bazy możemy chcieć wybrać ze wszystkich wyników tylko te które posiadają specyficzną wartość, np. tylko te osoby które zarabiają określoną kwotę lub określony zakres kwot. 1) WHERE: Zapytanie w którym używamy klauzuli WHERE pozwala wyświetlić tylko te wartości które odpowiadają naszym ograniczeniom. Poniżej zapytanie dzięki któremu pokażemy wszystkie informacje SELECT * FROM EMPLOYEES WHERE EMPLOYEE_ID=108; Możemy również wyświetlić informacje o miesięcznej pensji pracowników, chcemy pokazać tych którzy

SQL,PL/SQL – Operatory – Oracle 10/11 cz.5

Żaden język nie może obyć się bez operatorów, dzięki którym możemy dodawać, mnożyć, odejmować  czy dzielić, ale również porównywać parametry ze sobą. Poniżej lista dostępnych operatorów, z których możemy skorzystać podczas pracy z SQL. 1) Operatory arytmetyczne: Najczęściej używane operatory: 1.1)  + – dodawanie, 1.2)  –  – odejmowanie, 1.3) * – mnożenie, 1.4) / – dzielenie 2) Łączenie dwóch ciągów znakowych: Możemy połączyć dwa ciągi znakowe możemy użyć konkatenacji – ||.

SQL,PL/SQL – Operacje na danych (DISTINCT, ORDER BY) – Oracle 10/11 cz.4

W praktycznie każdej bazie znajdują się dane które będą się powtarzały, jeżeli chcemy wyświetlić dane które będą pojawiały się tylko i wyłącznie raz musimy użyć polecenia DISTINCT: SELECT  MANAGER_ID FROM DEPARTMENTS; Powyższe polecenie pokazało nam wszystkie wpisy dla Manager_ID w tabeli Departments.  Poniżej mamy to samo zapytanie, ale z użytym DISTINCT, pokażemy tylko unikalne dane: SELECT DISTINCT MANAGER_ID FROM DEPARTMENTS; Pojawi się tylko 12 wyników zamiast 27. Wyniki za naszych

SQL,PL/SQL – Pobieranie danych SELECT – Oracle 10/11 cz.3

Jednym z najbardziej podstawowych poleceń wykorzystywanych przy pracy z bazą danych jest polecenie SELECT,  za jego pomocą jesteśmy w stanie pobrać oraz wyświetlić zawartość danej tabeli na ekran. Jeżeli chcemy pokazać wszystkie kolumny (* ) tabeli employees, wystarczy napisać: SELECT * FROM Employees;  Mamy na powyższym screenie wyświetloną całą tabelę przechowującą dane pracowników. Oczywiście możemy ograniczyć zakres kolumn, które chcemy wyświetlić, wystarczy w sposób jawny wpisać ich nazwy w poleceniu:

SQL,PL/SQL – Typy danych – Oracle 10/11 cz.2

Nieodzowną częścią każdego języka programowania jest określony zestaw typów danych, które pozwalają na wykonanie określonych dla nich operacji, w dużych projektach warto wiedzieć ile miejsca w pamięci operacyjnej zajmuje zapytanie? W krótkim zapytaniu 1MB więcej to niewiele, jednak w przypadku baz produkcyjnych mających np. 200-300GB robi się już dość dużo, więc czasami warto zamienić zmienną jednego typu na inną która będzie zajmowała dużo mniej pamięci a wykonywała dokładnie tą samą

Droga Administratora IT.