ORACLE. System Zarządzania Bazą Danych Oracle. Oracle Advanced SQL



Podobne dokumenty
ORACLE. System Zarządzania Bazą Danych Oracle. Oracle Advanced SQL

Ćwiczenie 3. Funkcje analityczne

Laboratorium 3. Odkrywanie reguł asocjacyjnych.

Funkcje analityczne SQL CUBE (1)

Plan. Wyświetlanie n początkowych wartości (TOP n) Użycie funkcji agregujących. Grupowanie danych - klauzula GROUP BY

Hurtownie danych - przegląd technologii

Klasyczna Analiza Danych

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

Grupowanie danych klauzula GROUP BY

Ćwiczenie zapytań języka bazy danych PostgreSQL

OnLine Analytical Processing (OLAP) Zapytania SQL

select zam_id, cena_euro,(rank() over (partition by zam_id order by cena_euro)) from pozycjezamowien order by zam_id

Wykład 05 Bazy danych

Wykład 8. SQL praca z tabelami 5

Bazy danych wykład trzeci. Konrad Zdanowski

Język SQL. instrukcja laboratoryjna. Politechnika Śląska Instytut Informatyki. laboratorium Bazy Danych

Struktura bazy danych

SQL do zaawansowanych analiz danych część 1.

Rozszerzenia grupowania

SQL do zaawansowanych analiz danych część 1.

Laboratorium 2. Określanie ważności atrybutów.

Zadania do wykonania na laboratorium

System imed24 Instrukcja Moduł Analizy i raporty

ACESS- zadania z wykorzystaniem poleceń SQL

Instytut Mechaniki i Inżynierii Obliczeniowej Wydział Mechaniczny Technologiczny Politechnika Śląska

LAB 3 (część 1 Projektu)

Nauczycielem wszystkiego jest praktyka Juliusz Cezar. Nauka to wiara w ignorancję ekspertów Richard Feynman

Wykład 7 Implementacja języka SQL w systemach baz danych Oracle sortowanie, funkcje agregujące i podzapytania.

Map Reduce Proste zliczanie słów i zapytania SQL

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

NORTHWIND. Anonco.pl. ćwiczenia praktyczne. KiK s Tutorials. NORTHWIND dwiczenia praktyczne. ANONCO.PL/SQL SQLSERVERDLAOPORNYCH.WORDPRESS.

Język SQL, zajęcia nr 1

Aby uruchomić program klienta i połączyć się z serwerem, należy komendę:

Informatyka sem. III studia inżynierskie Transport 2018/19 LAB 2. Lab Backup bazy danych. Tworzenie kopii (backup) bazy danych

Informatyka 3 : Instrukcja 4

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

SQL praca z tabelami 4. Wykład 7

Kostki OLAP i język MDX

3. Budowa prostych raportów opartych o bazę danych

LABORATORIUM 8,9: BAZA DANYCH MS-ACCESS

Baza danych Uczniowie.mdb

Lista zadań nr Wyświetlić imię i nazwisko dla każdego pracownika z departamentu DEP T NO o numerze 000.

BAZY DANYCH LABORATORIUM. Studia niestacjonarne I stopnia

Lista zadań nr 1. Bazy danych laboratorium. dr inż. Grzegorz Bazydło, dr inż. Jacek Tkacz

Język SQL. Rozdział 10. Perspektywy Stosowanie perspektyw, tworzenie perspektyw prostych i złożonych, perspektywy modyfikowalne i niemodyfikowalne.

Klasyczna Analiza Danych

Ćwiczenie 2. Opcja przestrzenna bazy danych

Przykładowa baza danych BIBLIOTEKA

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

Komunikacja z bazą danych psql

Ćwiczenia laboratoryjne nr 11 Bazy danych i SQL.

1. Tworzenie tabeli. 2. Umieszczanie danych w tabeli

Laboratorium nr 5. Temat: Funkcje agregujące, klauzule GROUP BY, HAVING

Zapytania INSERT. Forma_platnosci. INSERT INTO forma_platnosci VALUES ('1', 'Gotówka'); INSERT INTO forma_platnosci VALUES ('2', 'Przelew odroczony');

SIECI KOMPUTEROWE I BAZY DANYCH

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

Bazy Danych - Instrukcja do Ćwiczenia laboratoryjnego nr 8

Informatyka 3 : Instrukcja 4 / 5

SIECI KOMPUTEROWE I BAZY DANYCH

Podstawy języka SQL Co to jest SQL? Możliwości SQL SQL*Plus

Autor: Joanna Karwowska

Aplikacje bazodanowe. Laboratorium 4. Dawid Poªap Aplikacje bazodanowe - laboratorium 4 Marzec, 15, / 13

Laboratorium 10. Odkrywanie cech i algorytm Non-Negative Matrix Factorization.

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

SQL (ang. Structured Query Language)

Wstęp do Business Intelligence

Laboratorium nr 8. Temat: Podstawy języka zapytań SQL (część 2)

SQL w 24 godziny / Ryan Stephens, Arie D. Jones, Ron Plew. Warszawa, cop Spis treści

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

Wydział Elektrotechniki, Informatyki i Telekomunikacji

LITERATURA. Wprowadzenie do systemów baz danych C.J.Date; WNT Warszawa 2000

Politechnika Krakowska im. Tadeusza Kościuszki. Karta przedmiotu. obowiązuje studentów rozpoczynających studia w roku akademickim 2013/2014

SQL do zaawansowanych analiz danych część 2.

Laboratorium Bazy danych SQL 2

a) ile wynosiła populacja najbardziej i najmniej ludnego z województw (oraz jakie były ich nazwy)

Operacja PIVOT w języku SQL w środowisku Oracle

Wykład 5. SQL praca z tabelami 2

Ćwiczenie 4. Użytkownicy

QUERY język zapytań do tworzenia raportów w AS/400

Ćwiczenie 3 funkcje agregujące

Podstawy języka SQL. SQL Structured Query Languagestrukturalny

Cel przedmiotu. Wymagania wstępne w zakresie wiedzy, umiejętności i innych kompetencji 1 Język angielski 2 Inżynieria oprogramowania

188 Funkcje analityczne

CREATE TABLE logika (p BOOLEAN); INSERT INTO logika VALUES(true); INSERT INTO logika VALUES(false); INSERT INTO logika VALUES(NULL);

OLAP i hurtownie danych c.d.

Bazy danych. Andrzej Łachwa, UJ, /15

Laboratorium 13. Eksploracja danych tekstowych.

Wprowadzenie do SQL TEMAT 3 - Zadania dodatkowe

Indeksy w bazach danych. Motywacje. Techniki indeksowania w eksploracji danych. Plan prezentacji. Dotychczasowe prace badawcze skupiały się na

BAZY DANYCH wprowadzenie do języka SQL. Opracował: dr inż. Piotr Suchomski

Zadania z SQLa (MS SQL Server)

Marcin Luckner Politechnika Warszawska Wydział Matematyki i Nauk Informacyjnych

Jerzy Nawrocki, Wprowadzenie do informatyki

OnLine Analytical Processing (OLAP) Kostki OLAP i zapytania MDX

SIECI KOMPUTEROWE I BAZY DANYCH

Widok Connections po utworzeniu połączenia. Obszar roboczy

Projekt strony internetowej firmy organizującej przyjęcia

Przykłady najlepiej wykonywać od razu na bazie i eksperymentować z nimi.

Transkrypt:

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 SQL dla zadań budżetowania, przewidywania trendów i zastosowań statystycznych (fraza model), Schemat testowy Schemat SH przedstawia bazę danych (hurtownię danych) wspomagającą przeprowadzanie analiz dotyczących wartości sprzedaży oraz poniesionych kosztów ze względu na: okres sprzedaży, produkt, kanał dystrybucji, promocję oraz klienta który dokonał transakcji. Główne tabele schematu SH: TIMES wymiar czasu CHANNELS wymiar kanału dystrybucji CUSTOMERS wymiar klienta COUNTRIES wymiar klienta, opis obszaru geograficznego PRODUCTS wymiar produktu PROMOTIONS wymiar promocji SALES fakty o sprzedaży COSTS fakty o kosztach Opis tabeli można uzyskać m.in. stosując komendę DESC <nazwa_tabeli>. Z1 Identyfikacja sekcji laboratoryjnej logowanie 1. Zapytać prowadzącego laboratorium o nazwę podsekcji, nazwę użytkownika laboratoryjnego, hasło oraz opis bazy danych. 2. Ustalić identyfikator sekcji ID<data w formacie rrmmdd>_<nr_sekcji>_<nr_podsekcji>, np. ID051231_1_3 identyfikator ten należy umieścić w sprawozdaniu Otworzyć SQL*Plus Worksheet lub SQL*Plus, zalogować się do bazy danych. Dla każdego zapytania należy zapisać zapytanie SQL, które je realizuje. Do formatowania wyniku należy użyć poleceń, typu: COLUMN country_region FORMAT A12 -- format pola 12 znaków COLUMN calendar_year FORMAT 9999 -- format pola 4 liczby set pagesize 100 -- rozmiar strony set linesize 200 -- długość linii Z2 Raportowanie z wykorzystaniem konstrukcji standardu SQL 1. Podać sumaryczną wartość sprzedaży, sumaryczną liczbę sprzedanych jednostek osiągniętą w poszczególnych regionach i krajach (wyświetlić country_iso_code) wynik uporządkować malejąco wg wartości sprzedaży. 2. Podać zapytania pozwalające na pobranie danych do raportu podsumowującego wartość sprzedaży na poziomach: regionu, podregionu, kraju, roku, kwartału dla regionów Americas i Middle East i lat 2000-2001 (schemat raportu, wg zamieszczonej tabeli, zawiera ona dane przykładowe). W raporcie należy podać wszystkie sumy częściowe od poziomu kraj-kwartał do sumy globalnej (wszystkie regiony, we wszystkich latach). Użyć: a. group by <lista kolumn> b. group by grouping sets( ) 2

c. group by rollup( ) d. group by cube ( ) Dla każdego zapytania podać: 20 pierwszych rekordów uzyskanych w wyniku realizacji zapytania posortowanych malejąco wg amount_sold, całkowitą liczbę zwróconych rekordów sumaryczny czas wykonania raportu (wszystkich zapytań dla a)-d)) użyć: set timing on/set timing off). Porównać czasy wykonania wszystkich raportów. rok kwart 2000 2001 suma region podregion kraj Q1 Q2 Q3 Q4 suma Q1 Q2 Q3 Q4 suma Americas Middle East Northern America Southern America US 1 1 1 1 4 1 1 1 1 4 8 CA 1 1 1 1 4 1 1 1 1 4 8 suma 2 2 2 2 8 2 2 2 2 8 16 AR 1 1 1 1 4 1 1 1 1 4 8 suma 3 3 3 3 12 3 3 3 3 12 24 Middle East SA 1 1 1 1 4 1 1 1 1 4 8 suma 4 4 4 4 16 4 4 4 4 16 32 Z3 Raportowanie z wykorzystaniem funkcji analitycznych SQL 1. Podać zapytanie tworzące ranking krajów według sprzedaży całkowitej (użyć RANK) miejsce I dla kraju o największej wartości sprzedaży. Kraj Suma Ranking Poland 120 1 France 90 2 Germany 80 3 Spain 70 4 US 60 5 Portugal 50 6 2. Podać zapytanie tworzące ranking krajów z regionu Europe w poszczególnych latach według sprzedaży całkowitej (użyć RANK). Rok Kraj Suma Ranking 2001 Poland 120 1 France 90 2 Germany 80 3 Spain 70 4 2000 Poland 100 1 Portugal 95 2 3

3. Napisać zapytanie pokazujące sumy wartości sprzedaży w USA kwartalnie i narastająco kwartalnie w danym roku: Rok Kwartał Suma arastająco 2000 1 9 9 2 20 29 3 10 39 4 3 42 2001 1 8 8 2 4 12 4. Napisać zapytanie pokazujące sumy wartości sprzedaży w USA kwartalnie oraz 3-kwartalną średnią kroczącą: Rok Kwartał Suma Średnia 3 kw 2000 1 9 9 2 20 14,5 3 10 13 4 3 11 2001 1 8 7 2 4 5 Z4 Raportowanie z wykorzystaniem modeli SQL Utworzyć perspektywę: CREATE VIEW sales_view AS SELECT country_name country, prod_name product, calendar_year year, SUM(amount_sold) sales, COUNT(amount_sold) cnt, MAX(calendar_year) KEEP (DENSE_RANK FIRST ORDER BY SUM(amount_sold) DESC) OVER (PARTITION BY country_name, prod_name) best_year, MAX(calendar_year) KEEP (DENSE_RANK LAST ORDER BY SUM(amount_sold) DESC) OVER (PARTITION BY country_name, prod_name) worst_year FROM sales, times, customers, countries, products WHERE sales.time_id = times.time_id AND sales.prod_id = products.prod_id AND sales.cust_id =customers.cust_id AND customers.country_id=countries.country_id GROUP BY country_name, prod_name, calendar_year; W oparciu o SALES_VIEW utworzyć jeden model o następującej charakterystyce: 1. model skoryguje, że po roku 1999 wartość sprzedaży podkładki pod mysz ( Mouse Pad ) w Polsce wynosiła 5, 2. model zakłada, że wartość sprzedaży produktu '128MB Memory Card' w roku 2006 w USA i Wielkiej Brytanii wzrośnie o 15% w stosunku do średniej sprzedaży w latach 1999-2005, 3. model zakłada, że wartość sprzedaży produktu 'Mouse Pad' w roku 2006 w Polsce wzrośnie o 5% w stosunku do maksymalnej wartości dotychczas zarejestrowanej sprzedaży tego produktu, 4. model wypisze przewidywaną wartość wszystkich produktów, których sprzedaż prognozuje się w roku 2006 4

5