Rozszerzenia grupowania
|
|
- Bogusław Żukowski
- 6 lat temu
- Przeglądów:
Transkrypt
1 Rozszerzenia grupowania 226
2 Plan rozdziału 227 Wprowadzenie ROLLUP CUBE GROUPING SETS GROUPING
3 Rozszerzenia grupowania danych 228 W złożonych magazynach danych oprócz tabel faktów i wymiarów istnieje dodatkowo wiele perspektyw materializowanych mających na celu zwiększenie wydajności systemu W większości przypadków przechowują one dane zagregowane, każda na innym poziomie, przy wykorzystaniu grupowania w oparciu o różne zbiory atrybutów Odświeżanie takie zestawu perspektyw materializowanych jest poważnym obciążeniem dla systemu Pomocą mogą w tym służyć rozszerzenia grupowania danych, dzięki którym jedno zapytanie może wyznaczać wiele zbiorów agregacji na różnych poziomach grupowania Rozszerzenia te stanowią rozbudowę klauzuli GROUP BY
4 ROLLUP 229 Polecenie ROLLUP jest rozszerzeniem klauzuli GROUP BY, które pozwala wyliczać dodatkowe podsumowania częściowe i ogólne. Polecenie ROLLUP służy do konstruowania pół-kostek danych. ROLLUP jest wyrażeniem wyjątkowo wydajnym. Dla n kolumn grupujących ROLLUP tworzy n + 1 podsumowań. Dodatkowe podsumowania wyznaczone przez ROLLUP wyliczane są przez eliminowanie kolejno kolumn grupujących począwszy od ostatniej a skończywszy na pierwszej Przykładowo klauzula GROUP BY ROLLUP(kontynent, kraj, miejscowość, dzielnica) Wyznaczy następujące podsumowania GROUP BY kontynent, kraj, miejscowość, dzielnica GROUP BY kontynent, kraj, miejscowość GROUP BY kontynent, kraj GROUP BY kontynent bez GROUP BY podsumowanie całkowite
5 Przykład użycia ROLLUP 230 SELECT nr_konta, typ, kategoria, sum(kwota) GROUP BY nr_konta, typ, kategoria SELECT nr_konta, typ, kategoria, sum(kwota) GROUP BY rollup(nr_konta, typ, kategoria); NR_KONTA TYP KATEGORIA SUM(KWOTA) WPŁATA PENSJA WPŁATA UMOWA O DZIEŁO WPŁATA WYPŁATA RACHUNEK ZA PRĄD -720, WYPŁATA RACHUNEK ZA TELEFON WYPŁATA WYPŁATA W BANKOMACIE WYPŁATA -2320, , WPŁATA PENSJA WPŁATA UMOWA O DZIEŁO WPŁATA WYPŁATA RACHUNEK ZA PRĄD -790, WYPŁATA RACHUNEK ZA TELEFON WYPŁATA WYPŁATA W BANKOMACIE WYPŁATA -2400, , WPŁATA PENSJA WPŁATA UMOWA O DZIEŁO WPŁATA WYPŁATA RACHUNEK ZA PRĄD -650, WYPŁATA RACHUNEK ZA TELEFON WYPŁATA WYPŁATA W BANKOMACIE WYPŁATA -2030, , ,5 GROUP BY nr_konta, typ, kategoria GROUP BY nr_konta, typ GROUP BY nr_konta bez GROUP BY Wartości kolumn które uległy "zwinięciu" w wyniku rozszerzenia klauzuli GROUP BY przyjmują wartości puste
6 Częściowa operacja ROLLUP 231 Operacja ROLLUP może być operacją częściową czyli obejmować tylko część kolumn występujących w klauzuli GROUP BY Dla przykładu: GROUP BY nr_konta, typ, ROLLUP(kategoria) Wyznaczy następujące posumowania GROUP BY nr_konta, typ, kategoria GROUP BY nr_konta, typ SELECT nr_konta, typ, sum(kwota) GROUP BY nr_konta, rollup(typ); GROUP BY nr_konta, typ GROUP BY nr_konta NR_KONTA TYP SUM(KWOTA) WPŁATA WYPŁATA -2320, , WPŁATA WYPŁATA -2400, , WPŁATA WYPŁATA -2030, ,5
7 CUBE 232 Operator CUBE tworzy podsumowania dla wszystkich możliwych kombinacji grupowanych kolumn. W terminologii analiz wielowymiarowych, CUBE generuje podsumowania częściowe i ogólne tabeli faktów dla wszystkich możliwych wymiarów. Dla n kolumn grupujących CUBE tworzy 2 n podsumowań. Przykładowo klauzula GROUP BY CUBE(kontynent, kraj, miejscowość, dzielnica) Wyznaczy następujące posumowania GROUP BY kontynent, kraj, miejscowość, dzielnica GROUP BY kontynent, kraj, miejscowość GROUP BY kontynent, kraj, dzielnica GROUP BY kontynent, dzielnica, miejscowość GROUP BY dzielnica, miejscowość, kraj GROUP BY kontynent, kraj GROUP BY kontynent, miejscowość GROUP BY kontynent, dzielnica GROUP BY kraj, dzielnica GROUP BY kraj, miejscowość GROUP BY dzielnica, miejscowość GROUP BY kontynent GROUP BY kraj GROUP BY miejscowość GROUP BY dzielnica bez GROUP BY podsumowanie całkowite
8 Przykład użycia CUBE 233 SELECT nr_konta, typ, sum(kwota) GROUP BY cube(nr_konta, typ) ORDER BY nr_konta, typ NR_KONTA TYP SUM(KWOTA) WPŁATA WYPŁATA -2320, , WPŁATA WYPŁATA -2400, , WPŁATA WYPŁATA -2030, ,5 WPŁATA WYPŁATA -6751, ,5 GROUP BY nr_konta, typ GROUP BY nr_konta GROUP BY typ bez GROUP BY
9 Częściowa operacja CUBE 234 Analogicznie jak w przypadku częściowej operacji ROLLUP tak samo istnieje częściowa operacja CUBE Pozwala ona objąć operacją CUBE tylko część wierszy występujących w klauzuli GROUP BY Dla przykładu: GROUP BY nr_konta, CUBE(typ, kategoria) Wyznaczy następujące posumowania GROUP BY nr_konta, typ, kategoria GROUP BY nr_konta, typ GROUP BY nr_konta, kategoria GROUP BY nr_konta SELECT nr_konta, typ, sum(kwota) GROUP BY nr_konta, cube(typ) ORDER BY nr_konta, typ GROUP BY nr_konta, typ GROUP BY nr_konta NR_KONTA TYP SUM(KWOTA) WPŁATA WYPŁATA -2320, , WPŁATA WYPŁATA -2400, , WPŁATA WYPŁATA -2030, ,5
10 GROUPING SETS 235 Zarówno operacja CUBE jak i ROLLUP może wyznaczać oprócz pożądanych podsumowań, także te, które są zbędne Operacja GROUPING SETS pozwala na jednoznaczne wskazanie tych podsumowań, które chcemy uzyskać Dla przykładu GROUPING SETS( (nr_konta, typ, kategoria), (nr_konta, typ), (nr_konta, kategoria) ) Wyznaczy następujące posumowania GROUP BY nr_konta, typ, kategoria GROUP BY nr_konta, typ GROUP BY nr_konta, kategoria
11 Przykład użycia GROUPING SETS 236 SELECT nr_konta, typ, sum(kwota) GROUP BY grouping sets((nr_konta, typ),(typ),(nr_konta), ()) ORDER BY nr_konta, typ NR_KONTA TYP SUM(KWOTA) WPŁATA WYPŁATA -2320, , WPŁATA WYPŁATA -2400, , WPŁATA WYPŁATA -2030, ,5 WPŁATA WYPŁATA -6751, ,5 GROUP BY nr_konta, typ GROUP BY nr_konta GROUP BY typ bez GROUP BY
12 Funkcja GROUPING 237 Aby właściwie zinterpretować wiersze uzyskane w wyniku operacji rozszerzających grupowanie musimy potrafić rozróżniać wiersze reprezentujące określone podsumowania Oparcie się na wartościach pustych występujących w kolumnach grupowania może prowadzić do błędów Wartości puste w kolumnach grupowania mogą bowiem wynikać ze zawartości bazy danych Funkcja GROUPING posiadająca jako argument wyrażenie występujące w klauzuli GROUP BY jednoznacznie wskazuje na "zwinięcie" danego wymiaru. Wartość funkcji 1 wskazuje na "zwinięcie", wartość 0 na "normalny" wiersz jaki pojawiłby się bez wykorzystania rozszerzeń grupowania
13 Użycie funkcji GROUPING (1/2) 238 SELECT nr_konta, typ, grouping(nr_konta) gnr, grouping(typ) gt, sum(kwota) GROUP BY grouping sets((nr_konta, typ),(typ),(nr_konta), ()) ORDER BY nr_konta, typ NR_KONTA TYP GNR GT SUM(KWOTA) WPŁATA WYPŁATA , , WPŁATA WYPŁATA , , WPŁATA WYPŁATA , ,5 WPŁATA WYPŁATA , ,5
14 Użycie funkcji GROUPING (2/2) 239 Funkcję GROUPING bardzo często wykorzystuje się także do zastąpienia pustej wartości bardziej znaczącą informacją SELECT decode(grouping(nr_konta),0,nr_konta,'wszystkie konta') nr_konta, decode(grouping(typ),0,typ,'wszystkie typy') typ, sum(kwota) FROM TRANSAKCJE GROUP BY grouping sets((nr_konta, typ),(typ),(nr_konta), ()) NR_KONTA TYP SUM(KWOTA) WPŁATA WPŁATA WPŁATA WYPŁATA -2320, WYPŁATA -2400, WYPŁATA -2030,5 Wszystkie konta WPŁATA Wszystkie konta WYPŁATA -6751, Wszystkie typy 7479, Wszystkie typy 9499, Wszystkie typy 6869,5 Wszystkie konta Wszystkie typy 23848,5
15 240 Wykorzystanie rozszerzenia grupowania W aplikacji rozszerzenie grupowania można wykorzystać do wypełnienia za pomocą jednego zapytania szablonu macierzowego. Przez dodanie innych funkcji grupujących można za pomocą jednego zapytania wyliczyć wiele takich szablonów SELECT nr_konta, typ, avg(kwota) GROUP BY cube(nr_konta, typ) ORDER BY nr_konta, typ NR_KONTA TYP WPŁATA WYPŁATA 1400,00-257,83 ŚREDNIA: 467,47 NR_KONTA TYP AVG(KWOTA) WPŁATA 1400, WYPŁATA -257, , WPŁATA 1487, WYPŁATA -300, , WPŁATA 1271, WYPŁATA -225, ,34 WPŁATA 1390,91 WYPŁATA -259,67 496, ŚREDNIA: 1487, , ,91-300,06-225,61-259,67 593,72 429,34 496,84
16 241 Wykorzystanie rozszerzenia grupowania Innym przykładowym sposobem wykorzystania rozszerzonego grupowania jest jednoczesne odświeżenie wielu tabel pełniących następnie rolę perspektyw materializowanych INSERT FIRST WHEN (gk=1 AND gt=0) THEN INTO mv_typ_sum(typ,kwota) VALUES (typ, suma) WHEN (gk=0 AND gt=1) THEN INTO mv_nr_konta_sum(nr_konta,kwota) VALUES (nr_konta,suma) WHEN (gk=0 AND gt=0) THEN INTO mv_nr_konta_typ_sum(nr_konta, typ, kwota) VALUES (nr_konta, typ, suma) SELECT nr_konta, typ, sum(kwota) suma, grouping(nr_konta) gk, grouping(typ) gt GROUP BY cube(nr_konta, typ) SELECT * FROM mv_nr_konta_typ_sum; SELECT * FROM mv_typ_sum; TYP KWOTA WPŁATA WYPŁATA -6751,5 SELECT * FROM mv_nr_konta_sum; NR_KONTA KWOTA , , ,5 NR_KONTA TYP KWOTA WPŁATA WYPŁATA -2320, WPŁATA WYPŁATA -2400, WPŁATA WYPŁATA -2030,5
17 Rozszerzenia grupowania a wydajność 242 Wszystkie rozszerzenia grupowania są operacjami bardzo wydajnymi znacząco przewyższającymi alternatywne rozwiązania SELECT nr_konta, typ, avg(kwota) GROUP BY cube(nr_konta, typ); Plan wykonywania SELECT STATEMENT Optimizer=CHOOSE (Cost=4...) 1 0 SORT (GROUP BY) (Cost=4 Card=5 Bytes=110) 2 1 GENERATE (CUBE) 3 2 SORT (GROUP BY) (Cost=4...) 4 3 TABLE ACCESS (FULL) OF...) Plan wykonywania SELECT STATEMENT Optimizer=CHOOSE (Cost=14...) 1 0 UNION-ALL 2 1 SORT (GROUP BY) (Cost=4 Card=5 Bytes=110) 3 2 TABLE ACCESS (FULL) OF 'TRANSAKCJE' (Cost=2 Card=48 Bytes=1056) 4 1 SORT (GROUP BY) (Cost=4 Card=3 Bytes=45) 5 4 TABLE ACCESS (FULL) OF 'TRANSAKCJE' (Cost=2 Card=48 Bytes=720) 6 1 SORT (GROUP BY) (Cost=4 Card=2 Bytes=22) 7 6 TABLE ACCESS (FULL) OF 'TRANSAKCJE' (Cost=2 Card=48 Bytes=528)... SELECT nr_konta, typ, avg(kwota) GROUP BY nr_konta, typ UNION ALL SELECT nr_konta, NULL, avg(kwota) GROUP BY nr_konta UNION ALL SELECT NULL, typ, avg(kwota) GROUP BY typ UNION ALL SELECT NULL, NULL, avg(kwota)
OLAP i hurtownie danych c.d.
OLAP i hurtownie danych c.d. Przypomnienie OLAP -narzędzia analizy danych Hurtownie danych -duże bazy danych zorientowane tematycznie, nieulotne, zmienne w czasie, wspierjące procesy podejmowania decyzji
SQL do zaawansowanych analiz danych część 1.
SQL do zaawansowanych analiz danych część 1. Mechanizmy języka SQL dla agregacji danych Rozszerzenia PIVOT i UNPIVOT Materiały wykładowe Bartosz Bębel Politechnika Poznańska, Instytut Informatyki Plan
Microsoft SQL Server Podstawy T-SQL
Itzik Ben-Gan Microsoft SQL Server Podstawy T-SQL 2012 przełożył Leszek Biolik APN Promise, Warszawa 2012 Spis treści Przedmowa.... xiii Wprowadzenie... xv Podziękowania... xix 1 Podstawy zapytań i programowania
1 DML - zapytania, część II Grupowanie Operatory zbiorowe DML - modyfikacja 7. 3 DCL - sterowanie danymi 9.
Plan wykładu Spis treści 1 DML - zapytania, część II 1 1.1 Grupowanie................................... 1 1.2 Operatory zbiorowe............................... 5 2 DML - modyfikacja 7 3 DCL - sterowanie
188 Funkcje analityczne
Funkcje analityczne 188 Plan rozdziału 189 Wprowadzenie do funkcji analitycznych Funkcje rankingu Funkcje okna Funkcje raportujące Funkcje LAG/LEAD Funkcje FIRST/LAST Odwrotne funkcje percentyli Funkcje
Podstawy języka T-SQL : Microsoft SQL Server 2016 i Azure SQL Database / Itzik Ben-Gan. Warszawa, Spis treści
Podstawy języka T-SQL : Microsoft SQL Server 2016 i Azure SQL Database / Itzik Ben-Gan. Warszawa, 2016 Spis treści Wprowadzenie Podziękowania xiii xvii 1 Podstawy zapytań i programowania T-SQL 1 Podstawy
Rozdział 17. Zarządzanie współbieżnością zadania dodatkowe
Rozdział 17. Zarządzanie współbieżnością zadania dodatkowe -- Definicje relacji i utworzenie stanu początkowego dla ćwiczeń z synchronizacji transakcji DROP TABLE Konta cascade constraints; DROP TABLE
Bazy danych - Materiały do laboratoriów IV
Bazy danych - Materiały do laboratoriów IV dr inż. Olga Siedlecka-Lamch Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska 17 marca 2011 roku Pozostałe funkcje wierszowe Oracle:
Szkolenie Oracle SQL podstawy. Terminy. 15 17 lutego 2010 First Minute! 1100zł!
Szkolenie Oracle SQL podstawy Terminy 15 17 lutego 2010 First Minute! 1100zł! Opis szkolenia Baza danych Oracle od dawna cieszy się zasłużona sławą wśród informatyków. Jej wydajność, szybkość działania
Grupowanie danych klauzula GROUP BY
Grupowanie danych klauzula GROUP BY! Użycie klazuli GROUP BY! Użycie klauzuli GROUP BY z klauzulą HAVING Użycie klauzuli GROUP BY SELECT productid, orderid,quantity SELECT productid,sum(quantity) AS total_quantity
Ćwiczenie 3. Funkcje analityczne
Ćwiczenie 3. Funkcje analityczne 1. Uruchomienie i skonfigurowanie środowiska do ćwiczeń Czas trwania: 15 minut Zadaniem niniejszych ćwiczeń jest przedstawienie podstawowych zagadnień dotyczących wykorzystywania
Konstruowanie Baz Danych SQL UNION, INTERSECT, EXCEPT
Studia podyplomowe Inżynieria oprogramowania współfinansowane przez Unię Europejska w ramach Europejskiego Funduszu Społecznego Projekt Studia podyplomowe z zakresu wytwarzania oprogramowania oraz zarządzania
Klasyczna Analiza Danych
Klasyczna Analiza Danych Mechanizmy języka SQL dla agregacji danych Rozszerzenia PIVOT i UNPIVOT Wyszukiwanie danych wg zadanego wzorca Materiały wykładowe Bartosz Bębel Politechnika Poznańska, Instytut
Wykład 6. SQL praca z tabelami 3
Wykład 6 SQL praca z tabelami 3 Łączenie wyników zapytań Język SQL zawiera mechanizmy pozwalające na łączenie wyników kilku pytań. Pozwalają na to instrukcje UNION, INTERSECT, EXCEPT o postaci: zapytanie1
Plan. Wyświetlanie n początkowych wartości (TOP n) Użycie funkcji agregujących. Grupowanie danych - klauzula GROUP BY
Plan Wyświetlanie n początkowych wartości (TOP n) Użycie funkcji agregujących Grupowanie danych - klauzula GROUP BY Generowanie wartości zagregowanych Użycie klauzul COMPUTE i COMPUTE BY Wyświetlanie początkowych
select zam_id, cena_euro,(rank() over (partition by zam_id order by cena_euro)) from pozycjezamowien order by zam_id
See also: OLAP.mth Suma narastająco... 1 Min max w poszczególnych grupach... 1 Numeracja elementów w grupach... 1 KLAUZULE GROUP BY, GROUP BY CUBE, GROUP BY ROLLUP... 1 MATERIAŁ ROBOCZY... 5 First VALUE
Wykład 8. SQL praca z tabelami 5
Wykład 8 SQL praca z tabelami 5 Podzapytania to mechanizm pozwalający wykorzystywać wyniki jednego zapytania w innym zapytaniu. Nazywane często zapytaniami zagnieżdżonymi. Są stosowane z zapytaniami typu
T-SQL dla każdego / Alison Balter. Gliwice, cop Spis treści. O autorce 11. Dedykacja 12. Podziękowania 12. Wstęp 15
T-SQL dla każdego / Alison Balter. Gliwice, cop. 2016 Spis treści O autorce 11 Dedykacja 12 Podziękowania 12 Wstęp 15 Godzina 1. Bazy danych podstawowe informacje 17 Czym jest baza danych? 17 Czym jest
ORACLE. System Zarządzania Bazą Danych Oracle. Oracle Advanced SQL
ORACLE System Zarządzania Bazą Danych Oracle Oracle Advanced SQL wersja 1.0 Politechnika Śląska 2008 Raportowanie z wykorzystaniem fraz rollup, cube Frazy cube, rollup, grouping sets umożliwiają rozszerzoną
Wykład 05 Bazy danych
Wykład 05 Bazy danych Tabela składa się z: Kolumn Wierszy Wartości Nazwa Wartości Opis INT [UNSIGNED] -2^31..2^31-1 lub 0..2^32-1 Zwykłe liczby całkowite VARCHAR(n) n = długość [1-255] Łańcuch znaków o
Relacyjne bazy danych. Podstawy SQL
Relacyjne bazy danych Podstawy SQL Język SQL SQL (Structured Query Language) język umożliwiający dostęp i przetwarzanie danych w bazie danych na poziomie obiektów modelu relacyjnego tj. tabel i perspektyw.
Przestrzenne bazy danych Podstawy języka SQL
Przestrzenne bazy danych Podstawy języka SQL Stanisława Porzycka-Strzelczyk porzycka@agh.edu.pl home.agh.edu.pl/~porzycka Konsultacje: wtorek godzina 16-17, p. 350 A (budynek A0) 1 SQL Język SQL (ang.structured
SQL w 24 godziny / Ryan Stephens, Arie D. Jones, Ron Plew. Warszawa, cop Spis treści
SQL w 24 godziny / Ryan Stephens, Arie D. Jones, Ron Plew. Warszawa, cop. 2016 Spis treści O autorach 11 Podziękowania 12 Część I Wprowadzenie do języka SQL 13 Godzina 1. Witamy w świecie języka SQL 15
Systemy OLAP I. Krzysztof Dembczyński. Instytut Informatyki Zakład Inteligentnych Systemów Wspomagania Decyzji Politechnika Poznańska
Krzysztof Dembczyński Instytut Informatyki Zakład Inteligentnych Systemów Wspomagania Decyzji Politechnika Poznańska Technologie Wytwarzania Oprogramowania Semestr zimowy 2007/08 Studia uzupełniajace magisterskie
SQL do zaawansowanych analiz danych część 1.
SQL do zaawansowanych analiz danych część 1. Rozszerzenia SQL Materiały laboratoryjne Bartosz Bębel Politechnika Poznańska, Instytut Informatyki Wprowadzenie do c wiczenia W niniejszym ćwiczeniu student
Wybór wszystkich danych: SELECT * FROM employee Wybór określonych kolumn lub wyrażeń: SELECT first_name, last_name, salary FROM employee
Polecenie SELECT instrukcja pobierająca dane z bazy danych (z tabel, widoków) użytkownik posługujący się nią musi mieć uprawnienia do pobierania danych wynikiem zapytania jest zawsze tablica o określonych
Autor: Joanna Karwowska
Autor: Joanna Karwowska Jeśli pobieramy dane z więcej niż jednej tabeli, w rzeczywistości wykonujemy tak zwane złączenie. W SQL istnieją instrukcje pozwalające na formalne wykonanie złączenia tabel - istnieje
Język DML. Instrukcje DML w różnych implementacjach SQL są bardzo podobne. Podstawowymi instrukcjami DML są: SELECT INSERT UPDATE DELETE
Język DML Instrukcje DML w różnych implementacjach SQL są bardzo podobne. Podstawowymi instrukcjami DML są: SELECT INSERT UPDATE DELETE Systemy Baz Danych, Hanna Kleban 1 INSERT Instrukcja INSERT dodawanie
SQL (ang. Structured Query Language)
SQL (ang. Structured Query Language) SELECT pobranie danych z bazy, INSERT umieszczenie danych w bazie, UPDATE zmiana danych, DELETE usunięcie danych z bazy. Rozkaz INSERT Rozkaz insert dodaje nowe wiersze
Grupowanie i funkcje agregujące
Grupowanie i funkcje agregujące Zadanie 1. Stwórz odpowiednią tabelę Test_agr i wprowadź odpowiednie rekordy tak, aby wynik zapytania SELECT AVG(kol) avg_all, AVG(DISTINCT kol) avg_dist, COUNT(*) count_gw,
Grupowanie i funkcje agregacji
Grupowanie i funkcje agregacji Funkcje agregujące: COUNT([DISTINCT] wyrażenie *), MIN(wyrażenie), MAX(wyrażenie), SUM([DISTINCT] wyrażenie), AVG([DISTINCT] wyrażenie). Klauzula GROUP BY Grupowanie polega
T-SQL w Microsoft SQL Server 2014 i SQL Server 2012
Itzik Ben-Gan Dejan Sarka Adam Machanic Kevin Farlee Zapytania w języku T-SQL w Microsoft SQL Server 2014 i SQL Server 2012 Przekład: Natalia Chounlamany Marek Włodarz APN Promise, Warszawa 2015 Spis treści
Tworzenie zapytań do Microsoft SQL Server
MS 20461 Tworzenie zapytań do Microsoft SQL Server Czas trwania: 5 dni (40 h) Poziom trudności: Średnio Zaawansowany Autoryzacja: Microsoft Opis: Szkolenie administratorów baz danych oraz programistów
Relacyjne bazy danych. Podstawy SQL
Relacyjne bazy danych Podstawy SQL Język SQL SQL (Structured Query Language) język umoŝliwiający dostęp i przetwarzanie danych w bazie danych na poziomie obiektów modelu relacyjnego tj. tabel i perspektyw.
77. Modelowanie bazy danych rodzaje połączeń relacyjnych, pojęcie klucza obcego.
77. Modelowanie bazy danych rodzaje połączeń relacyjnych, pojęcie klucza obcego. Przy modelowaniu bazy danych możemy wyróżnić następujące typy połączeń relacyjnych: jeden do wielu, jeden do jednego, wiele
Bazy danych 8. Podzapytania i grupowanie. P. F. Góra
Bazy danych 8. Podzapytania i grupowanie P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ 2009 Podzapytania Podzapytania pozwalaja na tworzenie strukturalnych podzapytań, co umożliwia izolowanie poszczególnych
Programowanie MSQL. show databases; - pokazanie jakie bazy danych są dostępne na koncie
Programowanie MSQL show databases; - pokazanie jakie bazy danych są dostępne na koncie show databases; - wyświetlenie wszystkich baz danych na serwerze create database nazwa; - za nazwa wstawiamy wybraną
Optymalizacja. Plan wykonania polecenia SQL (1) Plan wykonania polecenia SQL (2) Rozdział 19 Wprowadzenie do optymalizacji poleceń SQL
Optymalizacja Rozdział 19 Wprowadzenie do optymalizacji poleceń SQL Pojęcie i cel optymalizacji, schemat optymalizacji, plan wykonania polecenia SQL, polecenie EXPLAIN PLAN, dyrektywa AUTOTRACE, wybór
Kolekcje Zbiory obiektów, rodzaje: tablica o zmiennym rozmiarze (ang. varray) (1) (2) (3) (4) (5) Rozszerzenie obiektowe w SZBD Oracle
Rozszerzenie obiektowe w SZBD Oracle Cześć 2. Kolekcje Kolekcje Zbiory obiektów, rodzaje: tablica o zmiennym rozmiarze (ang. varray) (1) (2) (3) (4) (5) Malinowski Nowak Kowalski tablica zagnieżdżona (ang.
Wykład 7 Implementacja języka SQL w systemach baz danych Oracle sortowanie, funkcje agregujące i podzapytania.
Wykład 7 Implementacja języka SQL w systemach baz danych Oracle sortowanie, funkcje agregujące i podzapytania. Przykładowa RBD o schematach relacji (tzw. płaska postać RBD): N(PRACOWNICY) = {ID_P, IMIĘ,
Szkolenie autoryzowane. MS Tworzenie zapytań do Microsoft SQL Server Strona szkolenia Terminy szkolenia Rejestracja na szkolenie Promocje
Szkolenie autoryzowane MS 10774 Tworzenie zapytań do Microsoft SQL Server 2012 Strona szkolenia Terminy szkolenia Rejestracja na szkolenie Promocje Opis szkolenia Uwaga! Szkolenie wycofane z oferty. Zapraszamy
opisuje nazwy kolumn, wyrażenia arytmetyczne, funkcje nazwy tabel lub widoków warunek (wybieranie wierszy)
Zapytania SQL. Polecenie SELECT jest używane do pobierania danych z bazy danych (z tabel lub widoków). Struktura polecenia SELECT SELECT FROM WHERE opisuje nazwy kolumn, wyrażenia arytmetyczne, funkcje
KOLEKCJE - to typy masowe,zawierające pewną liczbę jednorodnych elementów
KOLEKCJE - to typy masowe,zawierające pewną liczbę jednorodnych elementów SQL3 wprowadza następujące kolekcje: zbiory ( SETS ) - zestaw elementów bez powtórzeń, kolejność nieistotna listy ( LISTS ) - zestaw
Wykład 5. SQL praca z tabelami 2
Wykład 5 SQL praca z tabelami 2 Wypełnianie tabel danymi Tabele można wypełniać poprzez standardową instrukcję INSERT INTO: INSERT [INTO] nazwa_tabeli [(kolumna1, kolumna2,, kolumnan)] VALUES (wartosc1,
Grupowanie i funkcje agregacji. Grupowanie z użyciem rollup
Grupowanie i funkcje agregacji Grupowanie z użyciem rollup Funkcje agregujące: COUNT([DISTINCT] wyrażenie *), MIN(wyrażenie), MAX(wyrażenie), SUM([DISTINCT] wyrażenie), AVG([DISTINCT] wyrażenie). Klauzula
Konstruowanie Baz Danych DQL agregacja danych
Studia podyplomowe Inżynieria oprogramowania współfinansowane przez Unię Europejska w ramach Europejskiego Funduszu Społecznego Projekt Studia podyplomowe z zakresu wytwarzania oprogramowania oraz zarządzania
Systemy OLAP I. Krzysztof Dembczyński. Instytut Informatyki Zakład Inteligentnych Systemów Wspomagania Decyzji Politechnika Poznańska
Systemy OLAP I Krzysztof Dembczyński Instytut Informatyki Zakład Inteligentnych Systemów Wspomagania Decyzji Politechnika Poznańska Technologie Wytwarzania Oprogramowania Semestr zimowy 2008/09 Studia
Agregacja i Grupowanie Danych. Funkcje Agregacji. Opcje GROUP BY oraz HAVING
Agregacja w SQL 1 Bazy Danych Wykład p.t. Agregacja i Grupowanie Danych Funkcje Agregacji. Opcje GROUP BY oraz HAVING Antoni Ligęza ligeza@agh.edu.pl http://galaxy.uci.agh.edu.pl/~ligeza Wykorzystano materiały:
Laboratorium Bazy danych SQL 2
Klauzula order by występuje jako ostatnia klauzula w poleceniu select, powoduje posortowanie wierszy będących wynikiem zapytania według wartości atrybutu w niej wskazanego. Domyślnie sortowanie jest według
Systemy GIS Tworzenie zapytań w bazach danych
Systemy GIS Tworzenie zapytań w bazach danych Wykład nr 6 Analizy danych w systemach GIS Jak pytać bazę danych, żeby otrzymać sensowną odpowiedź......czyli podstawy języka SQL INSERT, SELECT, DROP, UPDATE
Wprowadzenie do języka SQL
Wprowadzenie do języka SQL język dostępu do bazy danych grupy poleceń języka: DQL (ang( ang.. Data Query Language) DML (ang( ang.. Data Manipulation Language) DDL (ang( ang.. Data Definition Language)
Laboratorium nr 5. Temat: Funkcje agregujące, klauzule GROUP BY, HAVING
Laboratorium nr 5 Temat: Funkcje agregujące, klauzule GROUP BY, HAVING Celem ćwiczenia jest zaprezentowanie zagadnień dotyczących stosowania w zapytaniach języka SQL predefiniowanych funkcji agregujących.
Podstawowe zapytania SELECT (na jednej tabeli)
Podstawowe zapytania SELECT (na jednej tabeli) Struktura polecenia SELECT SELECT opisuje nazwy kolumn, wyrażenia arytmetyczne, funkcje FROM nazwy tabel lub widoków WHERE warunek (wybieranie wierszy) GROUP
Bazy danych 2. Wykład 4 Structured Query Language (SQL)
Bazy danych 2 Wykład 4 Structured Query Language (SQL) Cechy SQL W standardzie SQL wyróŝnia się dwie części: DDL (Data Definition Language) - język definiowania danych DML (Data Manipulation Language)
Widok Connections po utworzeniu połączenia. Obszar roboczy
Środowisko pracy 1. Baza danych: Oracle 12c - Serwer ELARA - Konta studenckie, dostęp także spoza uczelni - Konfiguracja: https://e.piotrowska.po.opole.pl/index.php?option=conf 2. Środowisko: SQL Developer
Oracle PL/SQL. Paweł Rajba.
Paweł Rajba pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Zawartość modułu 8 Wprowadzenie Definiowanie typu obiektowego Porównywanie obiektów Tabele z obiektami Operacje DML na obiektach Dziedziczenie -
Informatyka sem. III studia inżynierskie Transport 2018/19 LAB 2. Lab Backup bazy danych. Tworzenie kopii (backup) bazy danych
Informatyka sem. III studia inżynierskie Transport 2018/19 Lab 2 LAB 2 1. Backup bazy danych Tworzenie kopii (backup) bazy danych Odtwarzanie bazy z kopii (z backup u) 1. Pobieramy skrypt Restore 2. Pobieramy
Język SQL. Rozdział 4. Funkcje grupowe Funkcje grupowe, podział relacji na grupy, klauzule GROUP BY i HAVING.
Język SQL. Rozdział 4. Funkcje grupowe Funkcje grupowe, podział relacji na grupy, klauzule GROUP BY i HAVING. 1 Funkcje grupowe (agregujące) (1) Działają na zbiorach rekordów, nazywanych grupami. Rekordy
Paweł Rajba pawel@ii.uni.wroc.pl http://www.itcourses.eu/
Paweł Rajba pawel@ii.uni.wroc.pl http://www.itcourses.eu/ Wprowadzenie Historia i standardy Podstawy relacyjności Typy danych DDL tabele, widoki, sekwencje zmiana struktury DML DQL Podstawy, złączenia,
www.comarch.pl/szkolenia Operacja PIVOT w języku SQL w środowisku Oracle 21.11.2012
Operacja PIVOT w języku SQL w środowisku Oracle 21.11.2012 Zakres Wprowadzenie Idea przestawiania danych Możliwe zastosowania Przestawianie danych bez klauzuli PIVOT Konstrukcja klauzuli Korzyści ze stosowania
Podstawy języka SQL. standardy SQL formułowanie zapytań operacje na strukturach danych manipulowanie danymi. Bazy danych s.5-1
Podstawy języka SQL standardy SQL formułowanie zapytań operacje na strukturach danych manipulowanie danymi Bazy danych s.5-1 Język SQL SQL (ang. Structured Query Language, strukturalny język zapytań) język
ORACLE. System Zarządzania Bazą Danych Oracle. Oracle Advanced SQL
ORACLE System Zarządzania Bazą Danych Oracle Oracle Advanced SQL wersja 1.0 Politechnika Śląska 2008 Plan laboratorium Frazy SQL: group by, rollup, cube, grouping sets funkcje analityczne, budowa modeli
Bazy Danych II. Ćwiczenia
Bazy Danych II. Ćwiczenia Bartosz Zieliński 16 kwietnia 2011 Spis treści 1 Powtórzenie SQL 3 1.1 Tworzenie i usuwanie tabel........................ 3 1.2 Wstawianie danych do tabel........................
Hurtownie danych. Projektowanie hurtowni: modele wielowymiarowe. Modelowanie punktowe. Operacje OLAP na kostkach. http://zajecia.jakubw.
Hurtownie danych Projektowanie hurtowni: modele wielowymiarowe. Modelowanie punktowe. Operacje OLAP na kostkach. http://zajecia.jakubw.pl/hur UZASADNIENIE BIZNESOWE Po co nam hurtownia danych? Jakie mogą
Bloki anonimowe w PL/SQL
Język PL/SQL PL/SQL to specjalny język proceduralny stosowany w bazach danych Oracle. Język ten stanowi rozszerzenie SQL o szereg instrukcji, znanych w proceduralnych językach programowania. Umożliwia
Oracle PL/SQL. Paweł Rajba. pawel@ii.uni.wroc.pl http://www.kursy24.eu/
Paweł Rajba pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Zawartość modułu 6 Wprowadzenie Definiowanie wyzwalaczy DML Metadane wyzwalaczy Inne zagadnienia, tabele mutujące Wyzwalacze INSTEAD OF Wyzwalacze
PRZESTRZENNE BAZY DANYCH WYKŁAD 2
PRZESTRZENNE BAZY DANYCH WYKŁAD 2 Baza danych to zbiór plików, które fizycznie przechowują dane oraz system, który nimi zarządza (DBMS, ang. Database Management System). Zadaniem DBMS jest prawidłowe przechowywanie
Ćwiczenia laboratoryjne nr 11 Bazy danych i SQL.
Prezentacja Danych i Multimedia II r Socjologia Ćwiczenia laboratoryjne nr 11 Bazy danych i SQL. Celem ćwiczeń jest poznanie zasad tworzenia baz danych i zastosowania komend SQL. Ćwiczenie I. Logowanie
Ćwiczenia z Zaawansowanych Systemów Baz Danych
Ćwiczenia z Zaawansowanych Systemów Baz Danych Hurtownie danych Zad 1. Projekt schematu hurtowni danych W źródłach danych dostępne są następujące informacje dotyczące operacji bankowych: Klienci banku
Bazy danych. dr inż. Arkadiusz Mirakowski
Bazy danych dr inż. Arkadiusz Mirakowski Początek pracy z Transact SQL (T-SQL) 153.19.7.13,1401 jkowalski nr indeksu 2 Perspektywa - tabela tymczasowa - grupowanie Perspektywa (widok) Perspektywa (widok)
Język SQL. Rozdział 2. Proste zapytania
Język SQL. Rozdział 2. Proste zapytania Polecenie SELECT, klauzula WHERE, operatory SQL, klauzula ORDER BY. 1 Wprowadzenie do języka SQL Język dostępu do bazy danych. Język deklaratywny, zorientowany na
Optymalizacja poleceń SQL Wprowadzenie
Optymalizacja poleceń SQL Wprowadzenie 1 Fazy przetwarzania polecenia SQL 2 Faza parsingu (1) Krok 1. Test składniowy weryfikacja poprawności składniowej polecenia SQL. Krok 2. Test semantyczny m.in. weryfikacja
Język SQL. Rozdział 5. Połączenia i operatory zbiorowe
Język SQL. Rozdział 5. Połączenia i operatory zbiorowe Iloczyn kartezjański, połączenie równościowe, połączenie nierównościowe, połączenie zwrotne, połączenie zewnętrzne, składnia jawna połączeń, składnia
SQL Server i T-SQL w mgnieniu oka : opanuj język zapytań w 10 minut dziennie / Ben Forta. Gliwice, Spis treści
SQL Server i T-SQL w mgnieniu oka : opanuj język zapytań w 10 minut dziennie / Ben Forta. Gliwice, 2017 Spis treści O autorze 9 Wprowadzenie 11 Lekcja 1. Zrozumieć SQL 15 Podstawy baz danych 15 Język SQL
Microsoft Excel 2013: Budowanie modeli danych przy użyciu PowerPivot
Microsoft Excel 2013: Budowanie modeli danych przy użyciu PowerPivot Alberto Ferrari i Marco Russo Przekład: Marek Włodarz APN Promise Warszawa 2014 Spis treści Wprowadzenie............................................................
Oracle11g: Wprowadzenie do SQL
Oracle11g: Wprowadzenie do SQL OPIS: Kurs ten oferuje uczestnikom wprowadzenie do technologii bazy Oracle11g, koncepcji bazy relacyjnej i efektywnego języka programowania o nazwie SQL. Kurs dostarczy twórcom
SQL praca z tabelami 4. Wykład 7
SQL praca z tabelami 4 Wykład 7 1 Funkcje agregujące Informacja poszukiwana w bazie danych często musi być wyliczana na podstawie danych znajdujących się w wielu wierszach tabeli. Tak jest gdy chcemy znać
Język SQL. Rozdział 10. Perspektywy Stosowanie perspektyw, tworzenie perspektyw prostych i złożonych, perspektywy modyfikowalne i niemodyfikowalne.
Język SQL. Rozdział 10. Perspektywy Stosowanie perspektyw, tworzenie perspektyw prostych i złożonych, perspektywy modyfikowalne i niemodyfikowalne. 1 Perspektywa Perspektywa (ang. view) jest strukturą
Fazy przetwarzania polecenia SQL. Faza parsingu (2) Faza parsingu (1) Optymalizacja poleceń SQL Część 1.
Fazy przetwarzania polecenia SQL Optymalizacja poleceń SQL Część 1. Fazy przetwarzania polecenia SQL, pojęcie i cel optymalizacji, schemat optymalizacji, plan wykonania polecenia SQL, polecenie EXPLAIN
Modele danych - wykład V. Zagadnienia. 1. Wprowadzenie 2. MOLAP modele danych 3. ROLAP modele danych 4. Podsumowanie 5. Zadanie fajne WPROWADZENIE
Modele danych - wykład V Paweł Skrobanek, C-3 pok. 321 pawel.skrobanek@pwr.wroc.pl oprac. Wrocław 2006 Zagadnienia 1. Wprowadzenie 2. MOLAP modele danych 3. modele danych 4. Podsumowanie 5. Zadanie fajne
Bazy danych 6. Klucze obce. P. F. Góra
Bazy danych 6. Klucze obce P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ 2018 Dygresja: Metody przechowywania tabel w MySQL Tabele w MySQL moga być przechowywane na kilka sposobów. Sposób ten (żargonowo:
Bazy danych 6. Podzapytania i grupowanie. P. F. Góra
Bazy danych 6. Podzapytania i grupowanie P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ 2012 Podzapytania Podzapytania pozwalaja na tworzenie strukturalnych podzapytań, co umożliwia izolowanie poszczególnych
1.5.3 Do czego słuŝą tymczasowe przestrzenie 1.5.4 Zarządzanie plikami danych
Załącznik nr 2 do umowy nr 18/DI/PN/2013 Szczegółowy zakres szkoleń dotyczy części nr I zamówienia Lp. Nazwa 1 Administracja bazą danych w wersji 11g prze 6 dni 6 1.1 Struktura danych i typy obiektów 1.2
Procedury wyzwalane. (c) Instytut Informatyki Politechniki Poznańskiej 1
Procedury wyzwalane procedury wyzwalane, cel stosowania, typy wyzwalaczy, wyzwalacze na poleceniach DML i DDL, wyzwalacze typu INSTEAD OF, przykłady zastosowania, zarządzanie wyzwalaczami 1 Procedury wyzwalane
Blaski i cienie wyzwalaczy w relacyjnych bazach danych. Mgr inż. Andrzej Ptasznik
Blaski i cienie wyzwalaczy w relacyjnych bazach danych. Mgr inż. Andrzej Ptasznik Technologia Przykłady praktycznych zastosowań wyzwalaczy będą omawiane na bazie systemu MS SQL Server 2005 Wprowadzenie
Bazy danych 7. SQL podstawy
Bazy danych 7. SQL podstawy P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ semestr letni 2005/06 Structured Query Language Używane standardy: SQL92 SQL99 SQL:2003 Żaden dostawca nie jest w pełni zgodny
DECLARE <nazwa_zmiennej> typ [(<rozmiar> )] [ NOT NULL ] [ { := DEFAULT } <wartość> ];
Braki w SQL obsługi zdarzeń i sytuacji wyjątkowych funkcji i procedur użytkownika definiowania złożonych ograniczeń integralnościowych Proceduralny SQL Transact- SQL używany przez Microsoft SQL Server
Perspektywy Stosowanie perspektyw, tworzenie perspektyw prostych i złożonych, perspektywy modyfikowalne i niemodyfikowalne, perspektywy wbudowane.
Perspektywy Stosowanie perspektyw, tworzenie perspektyw prostych i złożonych, perspektywy modyfikowalne i niemodyfikowalne, perspektywy wbudowane. 1 Perspektywa Perspektywa (ang. view) jest strukturą logiczną
Optymalizacja poleceń SQL Metody dostępu do danych
Optymalizacja poleceń SQL Metody dostępu do danych 1 Metody dostępu do danych Określają, w jaki sposób dane polecenia SQL są odczytywane z miejsca ich fizycznej lokalizacji. Dostęp do tabeli: pełne przeglądnięcie,
Pawel@Kasprowski.pl Bazy danych. Bazy danych. Zapytania SELECT. Dr inż. Paweł Kasprowski. pawel@kasprowski.pl
Bazy danych Zapytania SELECT Dr inż. Paweł Kasprowski pawel@kasprowski.pl Przykład HAVING Podaj liczebność zespołów dla których najstarszy pracownik urodził się po 1940 select idz, count(*) from prac p
Wstęp 5 Rozdział 1. Podstawy relacyjnych baz danych 9
Wstęp 5 Rozdział 1. Podstawy relacyjnych baz danych 9 Tabele 9 Klucze 10 Relacje 11 Podstawowe zasady projektowania tabel 16 Rozdział 2. Praca z tabelami 25 Typy danych 25 Tworzenie tabel 29 Atrybuty kolumn
PODZAPYTANIE (SUBSELECT)
2. Podzapytania PODZAPYTANIE (SUBSELECT) oddzielna, ujęta w nawiasy instrukcja SELECT, zagnieżdżona w innej instrukcji SQL, zazwyczaj w instrukcji SELECT W instrukcji SELECT, podzapytanie może być umieszczone
DECLARE VARIABLE zmienna1 typ danych; BEGIN
Procedury zapamiętane w Interbase - samodzielne programy napisane w specjalnym języku (właściwym dla serwera baz danych Interbase), który umożliwia tworzenie zapytań, pętli, instrukcji warunkowych itp.;
Wstęp do Business Intelligence
Wstęp do Business Intelligence Co to jest Buisness Intelligence Business Intelligence (analityka biznesowa) - proces przekształcania danych w informacje, a informacji w wiedzę, która może być wykorzystana
Bazy danych 10. SQL Widoki
Bazy danych 10. SQL Widoki P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ semestr letni 2005/06 Widoki, AKA Perspektywy W SQL tabela, która utworzono za pomoca zapytania CREATE TABLE, nazywa się tabela
Modelowanie wymiarów
Wymiar Modelowanie wymiarów struktura umożliwiająca grupowanie danych z tabeli faktów implementowana jako obiekt bazy danych DIMENSION wykorzystanie DIMENSION zaawansowane przepisywanie zapytań (ang. query
PODSTAWY BAZ DANYCH 13. PL/SQL
PODSTAWY BAZ DANYCH 13. PL/SQL 1 Wprowadzenie do języka PL/SQL Język PL/SQL - rozszerzenie SQL o elementy programowania proceduralnego. Możliwość wykorzystywania: zmiennych i stałych, instrukcji sterujących
1: 2: 3: 4: 5: 6: 7: 8: 9: 10:
Grupa A (LATARNIE) Imię i nazwisko: Numer albumu: 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: Nazwisko prowadzącego: 11: 12: Suma: Ocena: Zad. 1 (10 pkt) Dana jest relacja T. Podaj wynik poniższego zapytania (podaj
Optymalizacja poleceń SQL
Optymalizacja poleceń SQL Przetwarzanie polecenia SQL użytkownik polecenie PARSER słownik REGUŁOWY RBO plan zapytania RODZAJ OPTYMALIZATORA? GENERATOR KROTEK plan wykonania statystyki KOSZTOWY CBO plan