Operacja PIVOT w języku SQL w środowisku Oracle

Save this PDF as:
 WORD  PNG  TXT  JPG

Wielkość: px
Rozpocząć pokaz od strony:

Download "www.comarch.pl/szkolenia Operacja PIVOT w języku SQL w środowisku Oracle 21.11.2012"

Transkrypt

1 Operacja PIVOT w języku SQL w środowisku Oracle

2 Zakres Wprowadzenie Idea przestawiania danych Możliwe zastosowania Przestawianie danych bez klauzuli PIVOT Konstrukcja klauzuli Korzyści ze stosowania PIVOT Przykłady działania PIVOT z klauzulą WITH Klauzula UNPIVOT Ograniczenia stosowania PIVOT i opcja XML Podsumowanie

3 Wprowadzenie W relacyjnych bazach danych dane przedstawiane są w postaci tabel. Sposób składowania danych bezpośrednio wpływa na sposób, w jaki można na nich operować. Często, aby lepiej przeanalizować dane należało zaprezentować je w innej, wygodniejszej postaci. W ten sposób można wydobyć informacje na temat trendów w zmiana danych (trendów sprzedaży, kosztów itp.

4 Przestawianie danych

5 Przestawianie danych

6

7 Obracanie w Oracle 10g przykład 1 SELECT * FROM ( SELECT kategoria, SUM(DECODE(kwartal,1,ilosc Q1, SUM(DECODE(kwartal,2,ilosc Q2, SUM(DECODE(kwartal,3,ilosc Q3, SUM(DECODE(kwartal,4,ilosc Q4 FROM sprzedaz2011 GROUP BY kategoria ORDER BY kategoria; KATEGORIA Q1 Q2 Q3 Q AGD komputery RTV telefony KWARTAL KATEGORIA ILOSC AGD komputery RTV telefony AGD komputery RTV telefony AGD komputery RTV telefony AGD komputery RTV telefony 375

8 Obracanie w Oracle 10g przykład 2 SELECT * FROM ( SELECT kategoria, SUM(CASE WHEN kwartal = 1 THEN ilosc END Q1, SUM(CASE WHEN kwartal = 2 THEN ilosc END Q2, SUM(CASE WHEN kwartal = 3 THEN ilosc END Q3, SUM(CASE WHEN kwartal = 4 THEN ilosc END Q4 FROM sprzedaz2011 GROUP BY kategoria ORDER BY kategoria; KATEGORIA Q1 Q2 Q3 Q AGD komputery RTV telefony

9 PIVOT Operacja umożliwiająca restrukturyzację danych do innej postaci - do formatu, w jakim łatwiej będzie dane przetwarzać lub analizować. Przestawianie kolumn na miejsce wierszy lub odwrotnie. Jednocześnie wykonywane są operacje agregujące (np. sumowanie, obliczanie średniej. Operacje przydatne, gdy chcemy obserwować np. trendy sprzedaży w czasie.

10 PIVOT SELECT... FROM... PIVOT ( pivot_clause pivot_for_clause pivot_in_clause WHERE... pivot_clause definiowanie kolumn do agregacji (Pivot jest operacją agregującą pivote_for_clause definiowanie kolumn do grupowania i obrotu pivote_in_clause definiowanie filtru dla kolumny (kolumn z klauzuli pivote_for_clause (zakres wartości ograniczającej wyniki

11 PIVOT przykład 1a SELECT * FROM ( SELECT kategoria, kwartal, ilosc FROM sprzedaz2011 PIVOT (SUM(ilosc FOR kwartal IN (1,2,3,4; KATEGORIA komputery telefony RTV AGD

12 PIVOT przykład 1b SELECT * FROM ( SELECT kategoria, kwartal, ilosc FROM sprzedaz2011 PIVOT (SUM(ilosc FOR kwartal IN (1 AS Q1, 2 AS Q2, 3 AS Q3, 4 AS Q4; KATEGORIA Q1 Q2 Q3 Q komputery telefony RTV AGD

13 ID PRODUKT KATEGORIA DATA_SPRZ CENA R TV Samsung LCD 50" RTV 02-JAN N 2 Pralka Bosch" AGD 02-JAN N 3 TV Sony LCD 40" RTV 03-JAN T 4 Lodówka Amica AGD 10-JAN T 5 Netbook Lenovo 12" Komputery 15-JAN N 6 Pralka Candy AGD 17-JAN N 7 Netbook Lenovo 10" Komputery 18-JAN N 8 Notebook Samnsung 15" Komputery 22-JAN N 9 TV Panasonic 32" TV 26-JAN N 10 Nokia Lumnia 800 Telefony 29-JAN N 11 TV Samsung LCD 40" RTV 01-FEB T 12 Zmywarka Bosch AGD 05-FEB T 13 TV Sony LCD 50" RTV 05-FEB N 14 Okap Mastercook AGD 09-FEB T 15 Samsung Galaxy S Telefony 11-FEB N 16 Sony Xperia Telefony 18-FEB T 17 Netbook Lenovo 10" Komputery 18-FEB T 18 Okap Amica AGD 23-FEB T 19 Samsung Galaxy S Telefony 24-FEB N 20 Nokia Lumnia 800 Telefony 26-FEB N 21 Apple IPhone 3 Telefony 27-FEB N 22 TV Panasonic 50" RTV 27-FEB N 23 Apple iphone 3 Telefony 01-MAR T 24 Netbook Samsung 10" Komputery 02-MAR T 25 TV Samsung LCD 40" RTV 04-MAR N 26 Apple iphone 3 Telefony 05-MAR T 27 Samsung Galaxy S Telefony 12-MAR N 28 Sony Xperia Telefony 16-MAR T

14 Przykład 2a jedna agregacja SELECT * FROM ( SELECT kategoria, TO_CHAR(data_sprzedazy,'MM' miesiac, id FROM sprzedaz2011_detal PIVOT (COUNT(id FOR miesiac IN ('01' AS STY,'02' AS LUT,'03' AS MAR; KATEGORIA STY LUT MAR RTV AGD Komputery Telefony 1 5 7

15 Przykład 2a jedna agregacja SELECT * FROM ( SELECT kategoria, TO_CHAR(data_sprzedazy,'MM' miesiac, id FROM sprzedaz2011_detal PIVOT (COUNT(id FOR miesiac IN (01 AS STY,02 AS LUT,03 AS MAR; KATEGORIA STY LUT MAR RTV AGD Komputery Telefony 0 0 0

16 Przykład 2b dwie agregacje SELECT * FROM ( SELECT kategoria, TO_CHAR(data_sprzedazy,'MM' miesiac, id, cena FROM sprzedaz2011_detal PIVOT (COUNT(id ilosc, SUM(cena zysk FOR miesiac IN ('01' AS STY,'02' AS LUT,'03' AS MAR; KATEGORIA STY_ILOSC STY_ZYSK LUT_ILOSC LUT_ZYSK MAR_ILOSC MAR_ZYSK RTV AGD Komputery Telefony

17 Przykład 2b cd. brak kolumny SELECT * FROM ( SELECT kategoria, TO_CHAR(data_sprzedazy,'MM' miesiac, id FROM sprzedaz2011_detal PIVOT (COUNT(id ilosc, SUM(cena zysk FOR miesiac IN ('01' AS STY,'02' AS LUT,'03' AS MAR; ERROR at line 4: ORA-00904: "CENA": invalid identifier

18 Przykład 2c przestawianie na wielu kolumnach SELECT * FROM ( SELECT kategoria, TO_CHAR(data_sprzedazy,'MM' miesiac, raty, id FROM sprzedaz2011_detal PIVOT (COUNT(id FOR (miesiac, raty IN (('01','N' AS STY_CAL, ('01','T' AS STY_RATY, ('02','N' AS LUT_CAL, ('02','T' AS LUT_RATY, ('03','N' AS MAR_CAL, ('03','T' AS MAR_RATY; KATEGORIA STY_CAL STY_RATY LUT_CAL LUT_RATY MAR_CAL MAR_RATY RTV AGD Komputery Telefony

19 Przykład 3a lokalizacja zapytania: podzapytanie inline view SELECT * FROM ( SELECT kategoria, kwartal, ilosc FROM sprzedaz2011 PIVOT (SUM(ilosc FOR kwartal IN (1 AS Q1, 2 AS Q2, 3 AS Q3, 4 AS Q4; KATEGORIA Q1 Q2 Q3 Q komputery telefony RTV AGD

20 Przykład 3b pełny select błędne wyniki SELECT * FROM sprzedaz2011 PIVOT (SUM(ilosc FOR kwartal IN (1 AS Q1, 2 AS Q2, 3 AS Q3, 4 AS Q4; ID KATEGORIA AGD telefony komputery AGD komputery AGD RTV telefony RTV RTV telefony telefony komputery komputery AGD RTV 190

21 Przykład 3c wybieranie kolumn w zapytani głównym - błąd SELECT kategoria, kwartal, ilosc FROM sprzedaz2011 PIVOT (SUM(ilosc FOR kwartal IN (1 AS Q1, 2 AS Q2, 3 AS Q3, 4 AS Q4; ERROR at line 1: ORA-00904: "ILOSC": invalid identifier

22 Przykład 3d subquery factoring WITH pivot_data AS ( SELECT kategoria, kwartal, ilosc FROM sprzedaz2011 SELECT * FROM pivot_data PIVOT (SUM(ilosc FOR kwartal IN (1 AS Q1, 2 AS Q2, 3 AS Q3, 4 AS Q4; KATEGORIA Q1 Q2 Q3 Q komputery telefony RTV AGD

23 Przykład 3e lokalizacja zapytania: podzapytanie view CREATE OR REPLACE VIEW v_sprzedaz2011 AS SELECT kategoria, kwartal, ilosc FROM sprzedaz2011; SELECT * FROM v_sprzedaz2011 PIVOT (SUM(ilosc FOR kwartal IN (1 AS Q1, 2 AS Q2, 3 AS Q3, 4 AS Q4; KATEGORIA Q1 Q2 Q3 Q komputery telefony RTV AGD

24 Przykład 4a sortowanie SELECT * FROM ( SELECT kategoria, kwartal, ilosc FROM sprzedaz2011 ORDER BY kategoria PIVOT (SUM(ilosc FOR kwartal IN (1 AS Q1, 2 AS Q2, 3 AS Q3, 4 AS Q4; KATEGORIA Q1 Q2 Q3 Q komputery telefony RTV AGD

25 Przykład 4b sortowanie SELECT * FROM ( SELECT kategoria, kwartal, ilosc FROM sprzedaz2011 PIVOT (SUM(ilosc FOR kwartal IN (1 AS Q1, 2 AS Q2, 3 AS Q3, 4 AS Q4 ORDER BY kategoria; KATEGORIA Q1 Q2 Q3 Q AGD RTV komputery telefony

26 Przykład 5a zaokrąglanie wyników SELECT * FROM ( SELECT kategoria, TO_CHAR(data_sprzedazy,'MM' miesiac, cena FROM sprzedaz2011_detal PIVOT (AVG(cena srednia_cena FOR miesiac IN ('01' AS STY,'02' AS LUT; KATEGORIA STY_SREDNIA_CENA LUT_SREDNIA_CENA RTV AGD Komputery Telefony

27 Przykład 5b zaokrąglanie wyników SELECT * FROM ( SELECT kategoria, TO_CHAR(data_sprzedazy,'MM' miesiac, cena FROM sprzedaz2011_detal PIVOT (ROUND(AVG(cena,2 srednia_cena FOR miesiac IN ('01' AS STY,'02' AS LUT; ERROR at line 4: ORA-56902: expect aggregate function inside pivot operation

28 Przykład 5c zaokrąglanie wyników SELECT kategoria, round(sty_srednia_cena,2 AS sty_srednia_cena, round(lut_srednia_cena,2 AS lut_srednia_cena FROM ( SELECT kategoria, TO_CHAR(data_sprzedazy,'MM' miesiac, cena FROM sprzedaz2011_detal PIVOT (AVG(cena srednia_cena FOR miesiac IN ('01' AS STY,'02' AS LUT; KATEGORIA STY_SREDNIA_CENA LUT_SREDNIA_CENA RTV AGD Komputery Telefony

29 Przykład 6a łączenie tabel SELECT * FROM ( SELECT kategoria, TO_CHAR(data_sprzedazy,'MM' miesiac, odbior, s.id FROM sprzedaz2011_detal s JOIN transakcje t ON (s.id=t.id PIVOT (COUNT(id FOR (miesiac, odbior IN (('01','OSOBISTY' AS STY_OSO, ('01','KURIER' AS STY_KUR, ('02','OSOBISTY' AS LUT_OSO, ('02','KURIER' AS LUT_KUR, ('03','OSOBISTY' AS MAR_OSO, ('03','KURIER' AS MAR_KUR; KATEGORIA STY_OSO STY_KUR LUT_OSO LUT_KUR MAR_OSO MAR_KUR RTV AGD Komputery Telefony

30 Przykład 6b łączenie tabel SELECT * FROM ( SELECT TO_CHAR(data_sprzedazy,'MM' miesiac, odbior, s.id FROM sprzedaz2011_detal s JOIN transakcje t ON (s.id=t.id PIVOT (COUNT(id FOR (miesiac, odbior IN (('01','OSOBISTY' AS STY_OSO, ('01','KURIER' AS STY_KUR, ('02','OSOBISTY' AS LUT_OSO, ('02','KURIER' AS LUT_KUR, ('03','OSOBISTY' AS MAR_OSO, ('03','KURIER' AS MAR_KUR; STY_OSO STY_KUR LUT_OSO LUT_KUR MAR_OSO MAR_KUR

31 Przykład 7a Podsumowania SELECT x.*, Q1+Q2+Q3+Q4 AS rocznie FROM ( SELECT kategoria, kwartal, ilosc FROM sprzedaz2011 PIVOT (SUM(ilosc FOR kwartal IN (1 AS Q1, 2 AS Q2, 3 AS Q3, 4 AS Q4 x; KATEGORIA Q1 Q2 Q3 Q4 ROCZNIE komputery telefony RTV AGD

32 Przykład 7b Podsumowania SELECT nvl(kategoria,'sum_kwartaly' AS kategoria, nvl(q1,sum(q1 OVER( AS Q1, nvl(q2,sum(q2 OVER( AS Q2, nvl(q3,sum(q3 OVER( AS Q3, nvl(q4,sum(q4 OVER( AS Q4, sum_kategorie FROM ( SELECT kategoria, NVL(to_char(kwartal,'rocznie' AS kw, sum(ilosc AS il FROM sprzedaz2011 GROUP BY ROLLUP (kategoria, kwartal PIVOT (SUM(il FOR kw IN (1 AS Q1, 2 AS Q2, 3 AS Q3, 4 AS Q4, 'rocznie' AS sum_kategorie;

33 Przykład 7b Podsumowania KATEGORIA Q1 Q2 Q3 Q4 SUM_KATEGORIE AGD RTV komputery telefony sum_kwartaly

34 UNPIVOT przykład 1a CREATE VIEW v_sprzedaz2011_pivoted AS SELECT * FROM ( SELECT kategoria, kwartal, ilosc FROM sprzedaz2011 PIVOT (SUM(ilosc FOR kwartal IN (1 AS Q1, 2 AS Q2, 3 AS Q3, 4 AS Q4;

35 UNPIVOT przykład 1b SELECT * FROM v_sprzedaz2011_pivoted UNPIVOT ( ilosc FOR kwartal IN (Q1, Q2, Q3, Q4 ; KATEGORIA KW ILOSC komputery Q1 130 komputery Q2 120 komputery Q3 120 komputery Q4 150 telefony Q1 250 telefony Q2 300 telefony Q3 330 telefony Q4 300 RTV Q1 150 RTV Q2 150 RTV Q3 180 RTV Q4 190 AGD Q1 100 AGD Q2 110 AGD Q3 90 AGD Q4 140 KATEGORIA Q1 Q2 Q3 Q AGD RTV komputery telefony

36 PIVOT i UNPIVOT ograniczenia Nie ma możliwości wybierania na liście SELECT kolumn, które znajdują się na klauzuli pivot_clause. ORA-00904: kolumna": invalid identifier Nie ma możliwości wybierania na liście SELECT kolumn, które znajdują się na klauzuli pivot_for_clause. ORA-00904: kolumna": invalid identifier Na klauzuli pivot_clause musi znaleźć się funkcja agregująca. ORA-56902: expect aggregate function inside pivot operation

37 PIVOT i lista wartości PIVOT działa prawidłowo dla podanej listy wartości w klauzuli pivot_in_clause Fakt, że lista wartości musi być podana na sztywno utrudnia stosowanie PIVOT Nie ma możliwości umieszczenia w pivot_in_clause podzapytania

38 SELECT * FROM ( PIVOT i lista wartości przykład 1a SELECT kategoria, kwartal, ilosc FROM sprzedaz2011 PIVOT (SUM(ilosc FOR kwartal IN (SELECT kwartal FROM sprzedaz2011; SQL Error: ORA-00936: brak wyrażenia "missing expression"

39 SELECT * FROM ( PIVOT i lista wartości przykład 1b SELECT kategoria, kwartal, ilosc FROM sprzedaz2011 PIVOT XML (SUM(ilosc FOR kwartal IN (ANY; Rezultat dostarczany jest w formacie XML Wyniki obejmują wszystkie istniejące wartości w polach danych

40 PIVOT i lista wartości przykład 1b cd. KATEGORIA KWARTAL_XML AGD <PivotSet><item><column name = "KWARTAL">1</column><column name = "SUM(ILOSC">100</column></item><item><column name = "KWARTAL">2</column><column name = "SUM(ILOSC">110</column></item><item><column name = "KWARTAL">3</column><column name = "SUM(ILOSC">90</column></item><item><column name = "KWARTAL">4</column><column name = "SUM(ILOSC">140</column></item></PivotSet> RTV <PivotSet><item><column name = "KWARTAL">1</column><column name = "SUM(ILOSC">150</column></item><item><column name = "KWARTAL">2</column><column name = "SUM(ILOSC">150</column></item><item><column name = "KWARTAL">3</column><column name = "SUM(ILOSC">180</column></item><item><column name = "KWARTAL">4</column><column name = "SUM(ILOSC">190</column></item></PivotSet> Komputery <PivotSet><item><column name = "KWARTAL">1</column><column name = "SUM(ILOSC">130</column></item><item><column name = "KWARTAL">2</column><column name = "SUM(ILOSC">120</column></item><item><column name = "KWARTAL">3</column><column name = "SUM(ILOSC">120</column></item><item><column name = "KWARTAL">4</column><column name = "SUM(ILOSC">150</column></item></PivotSet> telefony <PivotSet><item><column name = "KWARTAL">1</column><column name = "SUM(ILOSC">250</column></item><item><column name = "KWARTAL">2</column><column name = "SUM(ILOSC">300</column></item><item><column name = "KWARTAL">3</column><column name = "SUM(ILOSC">330</column></item><item><column name = "KWARTAL">4</column><column name = "SUM(ILOSC">300</column></item></PivotSet>

41 Możliwy jest zapis z podzapytaniem: PIVOT i lista wartości przykład 1c SELECT * FROM ( SELECT kategoria, kwartal, ilosc FROM sprzedaz2011 PIVOT XML (SUM(ilosc FOR kwartal IN (SELECT kwartal FROM sprzedaz2011; Wyniki obejmują wszystkie wartości w polach danych, nie tylko istniejące (również komórki puste

42 PIVOT i lista wartości przykład 1c Wyniki zapytania są w formacie XMLTYPE. Można te dane przetwarzać za pomocą wyrażeń XPath lub XQuery Można również wyciągać poszczególne elementy SELECT kategoria, EXTRACT(kwartal_xml, '/PivotSet/item/column' AS ilosc FROM ( SELECT kategoria, kwartal, ilosc FROM sprzedaz2011 PIVOT XML (SUM(ilosc FOR kwartal IN (ANY WHERE kategoria like '%RTV%';

43 PIVOT i lista wartości przykład 1b cd. KATEGORIA ILOSC RTV <column name="kwartal">1</column><column name="sum(ilosc">150</column> <column name="kwartal">2</column><column name="sum(ilosc">150</column> <column name="kwartal">3</column><column name="sum(ilosc">180</column> <column name="kwartal">4</column><column name="sum(ilosc">190</column>

44 Klauzula Pivot a dane z CSV Klauzula Pivot może pracować na plikach tekstowych. Plik musi zostać wcześniej podłączony do bazy, za pomocą opcji external table. Dalsze operacje nie różnią się od przypadku, gdy tabela jest składowana w bazie

45 Klauzula Pivot a dane z CSV CREATE TABLE sprzedaz2011_ext ( id NUMBER(4, kwartal NUMBER(2, kategoria VARCHAR2(15, ilosc NUMBER(4 ORGANIZATION EXTERNAL (TYPE ORACLE_LOADER DEFAULT DIRECTORY data_imp ACCESS PARAMETERS (RECORDS DELIMITED BY NEWLINE BADFILE 'bad' LOGFILE 'log' SKIP 1 FIELDS TERMINATED BY ';' ( id,kwartal,kategoria,ilosc LOCATION ('sprzedaz2011.csv' ;

46 Klauzula Pivot a dane z CSV SELECT * FROM ( SELECT kategoria, kwartal, ilosc FROM sprzedaz2011_ext PIVOT (SUM(ilosc FOR kwartal IN (1 AS Q1, 2 AS Q2, 3 AS Q3, 4 AS Q4; KATEGORIA Q1 Q2 Q3 Q komputery telefony RTV AGD

47 Podsumowanie Zasady użycia: Miejsce w składni SELECT Użycie widoków inline lub klauzuli WITH Konieczność podania listy wartości lub użycia XML Korzyści Łatwość zapisu w porównaniu do CASE lub DECODE Zwartość zapisu Możliwość generowania danych XML Obustronność operacji (PIVOT, UNPIVOT Łatwość przestawiania danych na wielu kolumnach oraz z wieloma agregacjami

48 Promocje PROMOCJE do wykorzystania dla uczestników w terminie do 31 stycznia 2013 roku*. SQL język dostępu do bazy danych Oracle - w cenie specjalnej zł 30% rabatu na szkolenie: SQL poziom zaawansowany. * Przy rejestracji do dodatkowe nagrody książkowe

49 Dziękuję za uwagę

KOLEKCJE - to typy masowe,zawierające pewną liczbę jednorodnych elementów

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

Bardziej szczegółowo

SQL do zaawansowanych analiz danych część 1.

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

Bardziej szczegółowo

OLAP i hurtownie danych c.d.

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

Bardziej szczegółowo

Generowanie dokumentów XML z tabel relacyjnych - funkcje SQLX

Generowanie dokumentów XML z tabel relacyjnych - funkcje SQLX Aktualizowanie dokumentów XML ( Oracle ) do aktualizowania zawartości dokumentów XML służy między innymi funkcja updatexml. wynikiem jej działania jest oryginalny dokument ze zmodyfikowanym fragmentem,

Bardziej szczegółowo

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, 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

Bardziej szczegółowo

Paweł Rajba pawel@ii.uni.wroc.pl http://www.itcourses.eu/

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,

Bardziej szczegółowo

Relacyjne bazy danych. Podstawy SQL

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.

Bardziej szczegółowo

Oracle11g: Wprowadzenie do SQL

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

Bardziej szczegółowo

Język SQL podstawy zapytań

Język SQL podstawy zapytań Język SQL podstawy zapytań 1 Plan prezentacji 1. Krótka historia języka SQL 2. Cechy języka SQL 3. Przykładowa baza danych 4. Podstawy zapytań - operacje na modelu relacyjnym 5. Polecenie SELECT zapytania

Bardziej szczegółowo

Program szkoleniowy Efektywni50+ Moduł IV Podstawy relacyjnych baz danych i język SQL

Program szkoleniowy Efektywni50+ Moduł IV Podstawy relacyjnych baz danych i język SQL Program szkoleniowy Efektywni50+ Moduł IV Podstawy relacyjnych baz danych i język SQL 1 Podstawy relacyjnego modelu danych. 3h UWAGA: Temat zajęć jest typowo teoretyczny i stanowi wprowadzenie do zagadnień

Bardziej szczegółowo

Bazy danych 10. SQL Widoki

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

Bardziej szczegółowo

Relacyjne bazy danych. Podstawy SQL

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.

Bardziej szczegółowo

Microsoft SQL Server Podstawy T-SQL

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

Bardziej szczegółowo

Wyzwalacz - procedura wyzwalana, składowana fizycznie w bazie, uruchamiana automatycznie po nastąpieniu określonego w definicji zdarzenia

Wyzwalacz - procedura wyzwalana, składowana fizycznie w bazie, uruchamiana automatycznie po nastąpieniu określonego w definicji zdarzenia Wyzwalacz - procedura wyzwalana, składowana fizycznie w bazie, uruchamiana automatycznie po nastąpieniu określonego w definicji zdarzenia Składowe wyzwalacza ( ECA ): określenie zdarzenia ( Event ) określenie

Bardziej szczegółowo

Oracle PL/SQL. Paweł Rajba. pawel@ii.uni.wroc.pl http://www.kursy24.eu/

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

Bardziej szczegółowo

Grupowanie i funkcje agregujące

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,

Bardziej szczegółowo

Szkolenie Oracle SQL podstawy. Terminy. 15 17 lutego 2010 First Minute! 1100zł!

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

Bardziej szczegółowo

15. Funkcje i procedury składowane PL/SQL

15. Funkcje i procedury składowane PL/SQL 15. Funkcje i procedury składowane PLSQL 15.1. SQL i PLSQL (Structured Query Language - SQL) Język zapytań strukturalnych SQL jest zbiorem poleceń, za pomocą których programy i uŝytkownicy uzyskują dostęp

Bardziej szczegółowo

Tworzenie zapytań do Microsoft SQL Server

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

Bardziej szczegółowo

Spis treści. Przedmowa

Spis treści. Przedmowa Spis treści Przedmowa V 1 SQL - podstawowe konstrukcje 1 Streszczenie 1 1.1 Bazy danych 1 1.2 Relacyjny model danych 2 1.3 Historia języka SQL 5 1.4 Definiowanie danych 7 1.5 Wprowadzanie zmian w tabelach

Bardziej szczegółowo

UPDATE Studenci SET Rok = Rok + 1 WHERE Rodzaj_studiow =' INŻ_ST'; UPDATE Studenci SET Rok = Rok 1 WHERE Nr_albumu IN ( '111345','100678');

UPDATE Studenci SET Rok = Rok + 1 WHERE Rodzaj_studiow =' INŻ_ST'; UPDATE Studenci SET Rok = Rok 1 WHERE Nr_albumu IN ( '111345','100678'); polecenie UPDATE służy do aktualizacji zawartości wierszy tabel lub perspektyw składnia: UPDATE { } SET { { = DEFAULT NULL}, {

Bardziej szczegółowo

SQL, LIKE, IN, CASE, EXISTS. Marcin Orchel

SQL, LIKE, IN, CASE, EXISTS. Marcin Orchel SQL, LIKE, IN, CASE, EXISTS Marcin Orchel Spis treści 1 LIKE 2 2 BETWEEN 4 3 IN 5 4 EXISTS 6 5 WYRAŻENIA CASE 7 6 Zadania 9 1 Rozdział 1 LIKE Predykat LIKE jest testem dopasowującym wzorzec łańcucha. Składnia

Bardziej szczegółowo

Bazy danych. Plan wykładu. Diagramy ER. Podstawy modeli relacyjnych. Podstawy modeli relacyjnych. Podstawy modeli relacyjnych

Bazy danych. Plan wykładu. Diagramy ER. Podstawy modeli relacyjnych. Podstawy modeli relacyjnych. Podstawy modeli relacyjnych Plan wykładu Bazy danych Wykład 9: Przechodzenie od diagramów E/R do modelu relacyjnego. Definiowanie perspektyw. Diagramy E/R - powtórzenie Relacyjne bazy danych Od diagramów E/R do relacji SQL - perspektywy

Bardziej szczegółowo

77. Modelowanie bazy danych rodzaje połączeń relacyjnych, pojęcie klucza obcego.

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

Bardziej szczegółowo

Bazy danych SQL Server 2005

Bazy danych SQL Server 2005 Bazy danych SQL Server 2005 TSQL Michał Kuciapski Typ zadania: Podstawowe zapytania Select Zadanie 1: Wyświetl następujące informacje z bazy: A. 1. Wyświetl informacje o klientach: nazwa firmy, imie, nazwisko,

Bardziej szczegółowo

Język PL/SQL Pakiety podprogramów

Język PL/SQL Pakiety podprogramów Język PL/SQL Pakiety podprogramów Pakiety podprogramów, specyfikacja i ciało pakietu, zmienne i kursory pakietowe, pseudoinstrukcje (dyrektywy kompilatora) 1 Pakiety Pakiet (ang. package) grupuje powiązane

Bardziej szczegółowo

Bloki anonimowe w PL/SQL

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

Bardziej szczegółowo

Zaawansowane bazy danych i hurtownie danych semestr I

Zaawansowane bazy danych i hurtownie danych semestr I Podprogramy Wydział Informatyki Politechnika Białostocka Zaawansowane bazy danych i hurtownie danych semestr I Procedury do przeprowadzenia akcji Funkcje do obliczania wartości Pakiety do zbierania logicznie

Bardziej szczegółowo

Model semistrukturalny

Model semistrukturalny Model semistrukturalny standaryzacja danych z różnych źródeł realizacja złożonej struktury zależności, wielokrotne zagnieżdżania zobrazowane przez grafy skierowane model samoopisujący się wielkości i typy

Bardziej szczegółowo

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. Perspektywy Stosowanie perspektyw, tworzenie perspektyw prostych i złożonych, perspektywy modyfikowalne i niemodyfikowalne, perspektywy wbudowane. 1 Perspektywa Perspektywa (ang. view) jest strukturą logiczną

Bardziej szczegółowo

Tworzenie raportów XML Publisher przy użyciu Data Templates

Tworzenie raportów XML Publisher przy użyciu Data Templates Tworzenie raportów XML Publisher przy użyciu Data Templates Wykorzystanie Szablonów Danych (ang. Data templates) jest to jedna z metod tworzenia raportów w technologii XML Publisher bez użycia narzędzia

Bardziej szczegółowo

Technologie baz danych WYKŁAD 7: Wyjątki

Technologie baz danych WYKŁAD 7: Wyjątki Wydział Informatyki Politechnika Białostocka Obsługa wyjątków Technologie baz danych WYKŁAD 7: Wyjątki [] [] Agnieszka Oniśko, Małgorzata Krętowska TBD-wyjątki 1 TBD-wyjątki 2 Sposoby powstania sytuacji

Bardziej szczegółowo

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

Bardziej szczegółowo

Wykład IV Modelowanie danych, projektowanie systemu informatycznego Modelowanie konceptualne implementacyjne Modelowanie pojęciowe na encjach

Wykład IV Modelowanie danych, projektowanie systemu informatycznego Modelowanie konceptualne implementacyjne Modelowanie pojęciowe na encjach Modelowanie danych, projektowanie systemu informatycznego Modelowanie odwzorowanie rzeczywistych obiektów świata rzeczywistego w systemie informatycznym. Modele - konceptualne reprezentacja obiektów w

Bardziej szczegółowo

EGZAMIN MATURALNY OD ROKU SZKOLNEGO

EGZAMIN MATURALNY OD ROKU SZKOLNEGO EGZAMIN MATURALNY OD ROKU SZKOLNEGO 2014/2015 INFORMATYKA POZIOM ROZSZERZONY ROZWIĄZANIA ZADAŃŃ I SCHEMATY PUNKTOWANIA (A1, A2, A3, A4, A6, A7) GRUDZIEŃ 2013 Zadanie 1. Test (0 5) Wymagania ogólne I. [

Bardziej szczegółowo

strukturalny język zapytań używany do tworzenia i modyfikowania baz danych oraz do umieszczania i pobierania danych z baz danych

strukturalny język zapytań używany do tworzenia i modyfikowania baz danych oraz do umieszczania i pobierania danych z baz danych SQL SQL (ang. Structured Query Language): strukturalny język zapytań używany do tworzenia strukturalny język zapytań używany do tworzenia i modyfikowania baz danych oraz do umieszczania i pobierania danych

Bardziej szczegółowo

Przydatne sztuczki - sql. Na przykładzie postgres a.

Przydatne sztuczki - sql. Na przykładzie postgres a. Przydatne sztuczki - sql. Na przykładzie postgres a. M. Wiewiórko 05/2014 Plan Uwagi wstępne Przykład Rozwiązanie Tabela testowa Plan prezentacji: Kilka uwag wstępnych. Operacje na typach tekstowych. Korzystanie

Bardziej szczegółowo

Systemy GIS Tworzenie zapytań w bazach danych

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

Bardziej szczegółowo

Ćwiczenia laboratoryjne nr 11 Bazy danych i SQL.

Ć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

Bardziej szczegółowo

Procedury wyzwalane. (c) Instytut Informatyki Politechniki Poznańskiej 1

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

Bardziej szczegółowo

w PL/SQL bloki nazwane to: funkcje, procedury, pakiety, wyzwalacze

w PL/SQL bloki nazwane to: funkcje, procedury, pakiety, wyzwalacze w PL/SQL bloki nazwane to: funkcje, procedury, pakiety, wyzwalacze Cechy bloków nazwanych: w postaci skompilowanej trwale przechowywane na serwerze wraz z danymi wykonywane na żądanie użytkownika lub w

Bardziej szczegółowo

Podzapytania. Rozdział 5. Podzapytania. Podzapytania wyznaczające wiele krotek (1) Podzapytania wyznaczające jedną krotkę

Podzapytania. Rozdział 5. Podzapytania. Podzapytania wyznaczające wiele krotek (1) Podzapytania wyznaczające jedną krotkę Podzapytania Rozdział 5 Podzapytania podzapytania proste i skorelowane, podzapytania w klauzuli SELECT i FROM, klauzula WITH, operatory ANY, ALL i EXISTS, zapytania hierarchiczne Podzapytanie jest poleceniem

Bardziej szczegółowo

Laboratorium nr 4. Temat: SQL część II. Polecenia DML

Laboratorium nr 4. Temat: SQL część II. Polecenia DML Laboratorium nr 4 Temat: SQL część II Polecenia DML DML DML (Data Manipulation Language) słuŝy do wykonywania operacji na danych do ich umieszczania w bazie, kasowania, przeglądania, zmiany. NajwaŜniejsze

Bardziej szczegółowo

Bazy Danych i Usługi Sieciowe

Bazy Danych i Usługi Sieciowe Bazy Danych i Usługi Sieciowe Ćwiczenia I Paweł Daniluk Wydział Fizyki Jesień 2011 P. Daniluk (Wydział Fizyki) BDiUS ćw. I Jesień 2011 1 / 15 Strona wykładu http://bioexploratorium.pl/wiki/ Bazy_Danych_i_Usługi_Sieciowe_-_2011z

Bardziej szczegółowo

XML w bazie danych IBM DB2

XML w bazie danych IBM DB2 Instytut Informatyki Politechnika Śląska Gliwice, ul. Akademicka 16 XML w bazie danych IBM DB2 Dr inż. Dariusz Mrozek Wykład: IBM DB2 uniwersalna platforma przetwarzania danych O czym dzisiaj? XML w relacyjnej

Bardziej szczegółowo

Bazy danych wykład trzeci. Konrad Zdanowski

Bazy danych wykład trzeci. Konrad Zdanowski SQL - przypomnienie Podstawowa forma kwerendy SQL: select A1,..., Ak from R1,..., Rn where ; Odpowiada jej w algebrze relacji operacja π A1,...,Ak (σ (R1 Rn)) SQL semantyka select R.

Bardziej szczegółowo

Część 1: OLAP. Raport z zajęć laboratoryjnych w ramach przedmiotu Hurtownie i eksploracja danych

Część 1: OLAP. Raport z zajęć laboratoryjnych w ramach przedmiotu Hurtownie i eksploracja danych Łukasz Przywarty 171018 Wrocław, 05.12.2012 r. Grupa: CZW/N 10:00-13:00 Raport z zajęć laboratoryjnych w ramach przedmiotu Hurtownie i eksploracja danych Część 1: OLAP Prowadzący: dr inż. Henryk Maciejewski

Bardziej szczegółowo

Grupowanie danych klauzula GROUP BY

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

Bardziej szczegółowo

SQL do zaawansowanych analiz danych część 1.

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

Bardziej szczegółowo

SQL (ang. Structured Query Language)

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

Bardziej szczegółowo

Cechy języka XQUERY. o na wejściu dokument lub fragment względnie kolekcja dokumentów lub fragmentów o na wyjściu dokument lub fragment.

Cechy języka XQUERY. o na wejściu dokument lub fragment względnie kolekcja dokumentów lub fragmentów o na wyjściu dokument lub fragment. Cechy języka XQUERY Język funkcyjny o wszystkie konstrukcje języka są wyrażeniami zwracającymi wartość o można je zagnieżdżać o wartości zwracane przez wyrażenia są tzw. sekwencjami ( w sensie XPath 2.0)

Bardziej szczegółowo

Bazy danych 7. SQL dalsze możliwości. Grupowanie.

Bazy danych 7. SQL dalsze możliwości. Grupowanie. Bazy danych 7. SQL dalsze możliwości. Grupowanie. P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ semestr letni 2005/06 MySQL i programowanie wsadowe C:\wyklady\bazy> mysql < nazwa pliku C:\wyklady\bazy>

Bardziej szczegółowo

SQL - Structured Query Language. strukturalny język zapytań

SQL - Structured Query Language. strukturalny język zapytań SQL - Structured Query Language strukturalny język zapytań SQL - Structured Query Language - strukturalny język zapytań Światowy standard przeznaczony do definiowania, operowania i sterowania danymi w

Bardziej szczegółowo

STROJENIE PRZETWARZAŃ SAS

STROJENIE PRZETWARZAŃ SAS STROJENIE PRZETWARZAŃ SAS PIOTR BEDNARCZYK, ORANGE POLSKA S.A. Copyright 2014, SAS Institute Inc. All rights reserved. WSTĘP AGENDA Analiza logów przetwarzań Obiekt Hash DATA STEP czy PROC SQL? Podzapytania

Bardziej szczegółowo

Bazy Danych - Instrukcja do Ćwiczenia laboratoryjnego nr 8

Bazy Danych - Instrukcja do Ćwiczenia laboratoryjnego nr 8 Bazy Danych - Instrukcja do Ćwiczenia laboratoryjnego nr 8 Bazowy skrypt PHP do ćwiczeń z bazą MySQL: Utwórz skrypt o nazwie cw7.php zawierający następującą treść (uzupełniając go o właściwą nazwę uŝytkownika

Bardziej szczegółowo

DECLARE <nazwa_zmiennej> typ [(<rozmiar> )] [ NOT NULL ] [ { := DEFAULT } <wartość> ];

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

Bardziej szczegółowo

Bazy danych i usługi sieciowe

Bazy danych i usługi sieciowe Bazy danych i usługi sieciowe Ćwiczenia I Paweł Daniluk Wydział Fizyki Jesień 2014 P. Daniluk (Wydział Fizyki) BDiUS ćw. I Jesień 2014 1 / 16 Strona wykładu http://bioexploratorium.pl/wiki/ Bazy_danych_i_usługi_sieciowe_-_2014z

Bardziej szczegółowo

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 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ą

Bardziej szczegółowo

Wyświetl imie i nazwisko ucznia, nazwę przedmiotu z którego otrzymał ocenę niedostateczną. Nazwij tę kwerendę oceny niedostateczne.

Wyświetl imie i nazwisko ucznia, nazwę przedmiotu z którego otrzymał ocenę niedostateczną. Nazwij tę kwerendę oceny niedostateczne. Kwerendy wybierające Kwerenda wybierająca jest najczęściej używanym rodzajem kwerendy. Służy do otrzymywania danych z tabeli lub tabel i wyświetla wyniki w arkuszu danych, w którym można je następnie aktualizować

Bardziej szczegółowo

I. Język manipulowania danymi - DML (Data Manipulation Language). Polecenia INSERT, UPDATE, DELETE

I. Język manipulowania danymi - DML (Data Manipulation Language). Polecenia INSERT, UPDATE, DELETE Wykład 9 Implementacja języka SQL w systemach baz danych Oracle manipulowanie danymi (DML), tworzenie, modyfikowanie i usuwanie obiektów bazy danych: tabel i perspektyw, więzów integralności, komentarzy

Bardziej szczegółowo

1: 2: 3: 4: 5: 6: 7: 8: 9: 10:

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

Bardziej szczegółowo

Wykład 05 Bazy danych

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

Bardziej szczegółowo

Potwierdzenie zamówienia za pomocą metody przesyłania plików PL

Potwierdzenie zamówienia za pomocą metody przesyłania plików PL Pomoc stanowiskowa Potwierdzenie zamówienia za pomocą metody przesyłania plików PL Użyj tego działania portalu dostawcy do potwierdzenia zamówień poprzez przesłanie pliku w programie Excel. Step 1. Po

Bardziej szczegółowo

System imed24 Instrukcja Moduł Analizy i raporty

System imed24 Instrukcja Moduł Analizy i raporty System imed24 Instrukcja Moduł Analizy i raporty Instrukcja obowiązująca do wersji 1.8.0 Spis treści 1. Moduł Analizy i Raporty... 3 1.1. Okno główne modułu Analizy i raporty... 3 1.1.1. Lista szablonów

Bardziej szczegółowo

Uruchomienie raportu w środowisku Oracle applications

Uruchomienie raportu w środowisku Oracle applications Spis treści Uruchomienie raportu w środowisku Oracle applications... 1 Pisanie do pliku dziennika... 2 srw drukowanie tekstu tylko na określonej stronie... 2 Formatowanie kwot... 2 Opis konta księgowego...

Bardziej szczegółowo

DB2 XML w relacyjnych bazach danych wstęp do wprowadzenia. Kuba Pochrybniak

DB2 XML w relacyjnych bazach danych wstęp do wprowadzenia. Kuba Pochrybniak DB2 XML w relacyjnych bazach danych wstęp do wprowadzenia Kuba Pochrybniak osoba id="137" imie Helena /imie osoba id="137" imie Helena /imie imie Jagienka /imie osoba id="137" imie Helena /imie imie Jagienka

Bardziej szczegółowo

Przykładowa baza danych BIBLIOTEKA

Przykładowa baza danych BIBLIOTEKA Przykładowa baza danych BIBLIOTEKA 1. Opis problemu W ramach zajęć zostanie przedstawiony przykład prezentujący prosty system biblioteczny. System zawiera informację o czytelnikach oraz książkach dostępnych

Bardziej szczegółowo

Język SQL. Rozdział 3. Funkcje wierszowe

Język SQL. Rozdział 3. Funkcje wierszowe Język SQL. Rozdział 3. Funkcje wierszowe Funkcje wierszowe (funkcje znakowe, funkcje liczbowe, funkcje operujące na datach, funkcje konwersji, funkcje polimorficzne). 1 Funkcje Przekształcają dane, pobrane

Bardziej szczegółowo

Wykład XII. optymalizacja w relacyjnych bazach danych

Wykład XII. optymalizacja w relacyjnych bazach danych Optymalizacja wyznaczenie spośród dopuszczalnych rozwiązań danego problemu, rozwiązania najlepszego ze względu na przyjęte kryterium jakości ( np. koszt, zysk, niezawodność ) optymalizacja w relacyjnych

Bardziej szczegółowo

Instrukcja podwaja zarobki osób, których imiona zaczynają się P i dalsze litery alfabetu zakładamy, że takich osbób jest kilkanaście.

Instrukcja podwaja zarobki osób, których imiona zaczynają się P i dalsze litery alfabetu zakładamy, że takich osbób jest kilkanaście. Rodzaje triggerów Triggery DML na tabelach INSERT, UPDATE, DELETE Triggery na widokach INSTEAD OF Triggery DDL CREATE, ALTER, DROP Triggery na bazie danych SERVERERROR, LOGON, LOGOFF, STARTUP, SHUTDOWN

Bardziej szczegółowo

- język zapytań służący do zapisywania wyrażeń relacji, modyfikacji relacji, tworzenia relacji

- język zapytań służący do zapisywania wyrażeń relacji, modyfikacji relacji, tworzenia relacji 6. Język SQL Język SQL (Structured Query Language): - język zapytań służący do zapisywania wyrażeń relacji, modyfikacji relacji, tworzenia relacji - stworzony w IBM w latach 70-tych DML (Data Manipulation

Bardziej szczegółowo

Wykonaj tę czynność, jeśli masz co najmniej trzy awiza dostawy do przetworzenia.

Wykonaj tę czynność, jeśli masz co najmniej trzy awiza dostawy do przetworzenia. Pomoc stanowiskowa Przesyłanie plików awiza dostawy PL Użyj tego działania portalu dostawcy do pobrania listy awizów dostawy, aktualizacji wpisów na podstawie informacji o wysyłce, a następnie przesłania

Bardziej szczegółowo

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. 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Ę,

Bardziej szczegółowo

Hurtownia Świętego Mikołaja projekt bazy danych

Hurtownia Świętego Mikołaja projekt bazy danych Aleksandra Kobusińska nr indeksu: 218366 Hurtownia Świętego Mikołaja projekt bazy danych Zaprezentowana poniżej baza jest częścią większego projektu bazy danych wykorzystywanej w krajowych oddziałach wiosek

Bardziej szczegółowo

Database Connectivity

Database Connectivity Oprogramowanie Systemów Pomiarowych 15.01.2009 Database Connectivity Dr inŝ. Sebastian Budzan Zakład Pomiarów i Systemów Sterowania Tematyka Podstawy baz danych, Komunikacja, pojęcia: API, ODBC, DSN, Połączenie

Bardziej szczegółowo

Wstęp 5 Rozdział 1. Podstawy relacyjnych baz danych 9

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

Bardziej szczegółowo

Język SQL, zajęcia nr 1

Język SQL, zajęcia nr 1 Język SQL, zajęcia nr 1 SQL - Structured Query Language Strukturalny język zapytań Login: student Hasło: stmeil14 Baza danych: st https://194.29.155.15/phpmyadmin/index.php Andrzej Grzebielec Najpopularniejsze

Bardziej szczegółowo

TOPWEB Microsoft Excel 2013 i PowerBI Przygotowanie danych, analiza i efektowna prezentacja wyników raportów

TOPWEB Microsoft Excel 2013 i PowerBI Przygotowanie danych, analiza i efektowna prezentacja wyników raportów TOPWEB Microsoft Excel 2013 i PowerBI Przygotowanie danych, analiza i efektowna prezentacja wyników raportów Przeznaczenie szkolenia Szkolenie dla osób chcących: Profesjonalnie przygotowywać dane do dalszej

Bardziej szczegółowo

Iwona Milczarek, Małgorzata Marcinkiewicz, Tomasz Staszewski. Poznań, 30.09.2015

Iwona Milczarek, Małgorzata Marcinkiewicz, Tomasz Staszewski. Poznań, 30.09.2015 Iwona Milczarek, Małgorzata Marcinkiewicz, Tomasz Staszewski Poznań, 30.09.2015 Plan Geneza Architektura Cechy Instalacja Standard SQL Transakcje i współbieżność Indeksy Administracja Splice Machince vs.

Bardziej szczegółowo

Przykład powyżej pokazuje, że w zapytaniu można umieszczać funkcje zarówno zdefiniowane w ramach środowiska, jak również własne.

Przykład powyżej pokazuje, że w zapytaniu można umieszczać funkcje zarówno zdefiniowane w ramach środowiska, jak również własne. LINQ w Microsoft Visual Basic 'zapytanie pobierające wszystkie liczby z kolekcji 'zmienna zapytanie jest typu: System.Collections.Generic.IEnumerable(Of Integer) Dim zapytanie = From wiersz In liczby 'lub

Bardziej szczegółowo

Baza danych Uczniowie.mdb

Baza danych Uczniowie.mdb Baza danych Uczniowie.mdb Zadania: 1. Tabele: Założyć bazę danych uczniowie.mdb o strukturze danych: Uczniowie-dane - zip Uczniowie1_dane - zip uczzsbd1.mdb 1) UCZNIOWIE (NRU, nazwisko, imie) a) Wpisać

Bardziej szczegółowo

Podstawy języka SQL cz. 2

Podstawy języka SQL cz. 2 Podstawy języka SQL cz. 2 1. Operatory zbiorowe a. UNION suma zbiorów z eliminacją powtórzeń, b. EXCEPT różnica zbiorów z eliminacją powtórzeń, c. INTERSECT część wspólna zbiorów z eliminacją powtórzeń.

Bardziej szczegółowo

Pawel@Kasprowski.pl Bazy danych. Bazy danych. Podstawy języka SQL. Dr inż. Paweł Kasprowski. pawel@kasprowski.pl

Pawel@Kasprowski.pl Bazy danych. Bazy danych. Podstawy języka SQL. Dr inż. Paweł Kasprowski. pawel@kasprowski.pl Bazy danych Podstawy języka SQL Dr inż. Paweł Kasprowski pawel@kasprowski.pl Plan wykładu Relacyjne bazy danych Język SQL Zapytania SQL (polecenie select) Bezpieczeństwo danych Integralność danych Współbieżność

Bardziej szczegółowo

Język PL/SQL Procedury i funkcje składowane

Język PL/SQL Procedury i funkcje składowane Język PL/SQL Procedury i funkcje składowane Podprogramy, procedury i funkcje składowane, typy argumentów, wywoływanie procedur i funkcji, poziomy czystości funkcji 1 Podprogramy Procedury (wykonują określone

Bardziej szczegółowo

T-SQL w Microsoft SQL Server 2014 i SQL Server 2012

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

Bardziej szczegółowo

Bazy danych 8. Widoki i wyzwalacze. P. F. Góra

Bazy danych 8. Widoki i wyzwalacze. P. F. Góra Bazy danych 8. Widoki i wyzwalacze P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ 2012 I. Widoki, AKA Perspektywy W SQL tabela, która utworzono za pomoca zapytania CREATE TABLE, nazywa się tabela podstawowa

Bardziej szczegółowo

Oracle Application Express

Oracle Application Express Oracle Application Express Dla Oracle Application Express 4.2.2 Część 5. Walidacja operacji W niniejszej części ćwiczenia uzupełnimy wcześniej zbudowane strony o możliwość weryfikacji poprawności wykonywanych

Bardziej szczegółowo

SELECT * FROM tabela WHERE warunek wybiera dane spełniające podany warunek

SELECT * FROM tabela WHERE warunek wybiera dane spełniające podany warunek SELECT SELECT kolumna1, kolumna2,, kolumnan FROM tabela wybrane kolumny SELECT * FROM tabela wszystkie kolumny select * from Orders select CustomerID, CompanyName, Country from Customers WHERE SELECT *

Bardziej szczegółowo

znaleźć wszystkie rekordy dotyczące adresów przy ulicy Hożej (dowolnego miasta!);

znaleźć wszystkie rekordy dotyczące adresów przy ulicy Hożej (dowolnego miasta!); TI:WTBD/Ćwiczenia 9 przykład użycia SQLite w Pythonie: własnej roboty narzędzie do interaktywnych zapytań zapytania (SELECT) ze złączeniami (wewnętrznymi) zapytania agregujące tworzymy i wypełniamy danymi

Bardziej szczegółowo

XML w bazach danych i bezpieczeństwie

XML w bazach danych i bezpieczeństwie XML w bazach danych i bezpieczeństwie Patryk Czarnik Instytut Informatyki UW XML i nowoczesne technologie zarzadzania treścia 2007/08 Klasyfikacja wsparcia dla XML-a w bazach danych (Relacyjna) baza danych

Bardziej szczegółowo

Przykładowe środowisko integracji. Architektury i technologie integracji danych. Ćwiczenie 1. DB2 - Oracle. Przebieg ćwiczenia

Przykładowe środowisko integracji. Architektury i technologie integracji danych. Ćwiczenie 1. DB2 - Oracle. Przebieg ćwiczenia Przykładowe środowisko integracji Architektury i technologie integracji danych Wprowadzenie do ćwiczeń laboratoryjnych Opis przebiegu ćwiczeń Omówienie mechanizmów wykorzystywanych w ćwiczeniach Bartosz

Bardziej szczegółowo

Przestrzenne bazy danych Podstawy języka SQL

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

Bardziej szczegółowo

Systemowe aspekty baz danych

Systemowe aspekty baz danych Systemowe aspekty baz danych Deklaracja zmiennej Zmienne mogą być wejściowe i wyjściowe Zmienne w T-SQL można deklarować za pomocą @: declare @nazwisko varchar(20) Zapytanie z użyciem zmiennej: select

Bardziej szczegółowo

Ref. 7 - Język SQL - polecenia DDL i DML

Ref. 7 - Język SQL - polecenia DDL i DML Ref. 7 - Język SQL - polecenia DDL i DML Wprowadzenie do języka SQL. Polecenia generujące strukturę bazy danych: CREATE, ALTER i DROP. Polecenia: wprowadzające dane do bazy - INSERT, modyfikujące zawartość

Bardziej szczegółowo

Wykład 5 funkcje i procedury pamiętane widoki (perspektywy) wyzwalacze

Wykład 5 funkcje i procedury pamiętane widoki (perspektywy) wyzwalacze Wykład 5 funkcje i procedury pamiętane widoki (perspektywy) wyzwalacze 1 Funkcje i procedury pamiętane Następujące polecenie tworzy zestawienie zawierające informację o tym ilu jest na naszej hipotetycznej

Bardziej szczegółowo

Optymalizacja poleceń SQL

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

Bardziej szczegółowo

Relacyjne bazy danych a XML

Relacyjne bazy danych a XML Relacyjne bazy danych a XML Anna Pankowska aniap@amu.edu.pl Internet, SQLiXMLwbiznesie Internet nieoceniony sposób komunikacji z klientami, pracownikami i partnerami handlowymi przyspiesza transakcje finansowe

Bardziej szczegółowo

Wyzwalacze. Anna Fiedorowicz Bazy danych 2

Wyzwalacze. Anna Fiedorowicz Bazy danych 2 Wyzwalacze Wyzwalacze są specjalnymi procedurami składowanymi, uruchamianymi automatycznie w następstwie zaistnienia określonego typu zdarzenia. Ich główne zadanie polega na wymuszaniu integralności danych

Bardziej szczegółowo

Programowanie w Ruby

Programowanie w Ruby Programowanie w Ruby Wykład 6 Marcin Młotkowski 14 listopada 2012 Plan wykładu Trwałość obiektów Bazy danych DBM Bazy danych SQL Active records Szeregowanie obiektów Obiekt Serializacja @tytul = 'Pan Tadeusz'

Bardziej szczegółowo

Plan bazy: Kod zakładający bazę danych: DROP TABLE noclegi CASCADE; CREATE TABLE noclegi( id_noclegu SERIAL NOT NULL,

Plan bazy: Kod zakładający bazę danych: DROP TABLE noclegi CASCADE; CREATE TABLE noclegi( id_noclegu SERIAL NOT NULL, Mój projekt przedstawia bazę danych noclegów składającą się z 10 tabel. W projekcie wykorzystuje program LibreOffice Base do połączenia psql z graficznym interfejsem ( kilka formularzy przedstawiających

Bardziej szczegółowo