Integracja i Eksploracja Danych Laboratorium nr 4 Wprowadzenie do języka MDX. Zadania: 1) Analogicznie do przykładu zawartego na poprzednich zajęciach, korzystając z SQL Server Business Intelligence Development Studio, przygotuj kostkę OLAP dla bazy danych Salonu samochodowego. 2) Przemianuj miarę/pomiar domyślnie oznaczony jako Sprzedaz Count na LiczbaTransakcji oraz Wartosc na Przychod. 3) Dodaj dwie nowe miary DataOstSprzedazy oraz LiczbaKlientow. 4) Korzystając z przygotowanej kostki utworzyć raport dotyczący sprzedaży określonej marki samochodu, w danym kwartale, z uwzględnieniem bilansu rocznego. 5) Dodać do raportu kilka filtrów takich jak okres sprzedaży, czy marka samochodu i przetestuj ich działanie. Politechnika Poznańska mgr inż. Tadeusz Janasiewicz 1
Składnia języka: Wyrażenie SELECT ma następującą składnię: [WITH <specifikacja_formuły>[, <specifikacja_formuły>...]] SELECT [<specifikacja_osi> [, <specifikacja_osi>...]] FROM [<specyfikacja_kostki>] [WHERE [<specifikacja_plastra>]] Specyfikacja osi ma następującą składnię: <specifikacja_osi> ::= <zbiór_ciągów_członów> ON <nazwa_osi> <nazwa_osi> ::= COLUMNS ROWS PAGES SECTIONS CHAPTERS AXIS(<indeks>) Funkcje na wymiarach: Crossjoin(X, Y) tworzy iloczyn kartezjański zbiorów X i Y; Members zwraca wszystkie człony z wymiaru, hierarchii lub poziomu, do których jest stosowana: hierarchyexp.members, levelexp.members; Children zwraca zbiór członów będących dziećmi członu, do którego jest stosowana, składnia: memberexp.children. Zadania: 1) Korzystając z SQL Server Management Studio napisz w języku MDX polecenie tworzenia tabeli przestawnej (pivot table), w której zawarte są informacje: a. o liczbie transakcji w całej przestrzeni czasu, b. dotyczące liczby transakcji z wyodrębnieniem miast, skorzystaj z funkcji MEMBERS, c. o wartości sprzedaży samochodów dwóch różnych marek w dwóch różnych województwach, Politechnika Poznańska mgr inż. Tadeusz Janasiewicz 2
2) Napisz w języku MDX polecenie tworzenia tabeli przestawnej (pivot table), w której zawarte są informacje o wartości sprzedaży samochodów we wszystkich możliwych regionach (pamiętaj o zdefiniowaniu niezbędnej hierarchii - RegionSprzedazy). 3) Napisz w języku MDX polecenie tworzenia tabeli przestawnej, w której zawarte są informacje o kosztach sprzedaży samochodów i liczbie transakcji sprzedaży dla marki Fiat i Ford w Sopocie oraz modelu Escord w Gnieźnie. 4) W ramach projektu kostki dodaj nową wyznaczaną miarę (Calculations) Zysk liczoną jako różnica Przychodu oraz Kosztu. Powiąż ją do grupy miar Sprzedaz. Wskaż region, w którym w danym roku uzyskano najwyższy Zysk. Politechnika Poznańska mgr inż. Tadeusz Janasiewicz 3
5) Napisz w języku MDX polecenie tworzenia tabeli przestawnej, w której zawarte są informacje o przychodzie, liczbie transakcji i dacie ostatniej sprzedaży, dla wszystkich kombinacji producentów samochodów i lat sprzedaży. 6) Skonstruuj zapytanie w języku MDX, którego wynikiem będzie tabela przestawna postaci: 7) Korzystając z frazy WHERE, wyodrębnij liczbę transakcji związanych z danym modelem w każdym z regionów. Ogranicz zbiór komórek wynikowych do tych, które dotyczą sprzedaży w roku 2011 (umieszczenie danego pomiaru np. LiczbaKlientow we frazie WHERE oznacza, że tylko ten pomiar zostanie uwzględniony). Politechnika Poznańska mgr inż. Tadeusz Janasiewicz 4
8) Napisz w języku MDX polecenie tworzenia tabeli przestawnej, która uwzględni Przychód, Koszt oraz ZyskProcentowy w każdym regionie. ZyskProcentowy wyznacz definiując nowy element zapytania, do tego celu skorzystaj z frazy WITH MEMBER. Politechnika Poznańska mgr inż. Tadeusz Janasiewicz 5