4.0 KiB
DGED Laboratoria nr 3 - Raport
Agata Lenz - 444426
Zadanie 3
Pytanie 1: jaka jest liczba unikalnych wartości: daty, klientów, regionów, towarów
Przy pomocy następującego zapytania SQL:
SELECT COUNT(DISTINCT data) AS daty,
COUNT(DISTINCT klient) AS klienci,
COUNT(DISTINCT region) AS regiony,
COUNT(DISTINCT sprzet) AS towary
FROM dbo.frania200507
uzyskałam wynik liczby unikalnych wartości: daty - 28, klientów - 10, regionów - 9 oraz towarów - 17.
Pytanie 2: Czy cena hurtowa jest stałą cechą towaru czy zmienia się w czasie?
Poniższe zapytanie SQL zwraca sprzęty, których cena hurtowa zmieniała się w czasie:
SELECT F1.sprzet
FROM dbo.frania200507 F1
INNER JOIN dbo.frania200507 F2
ON F1.sprzet = F2.sprzet
AND F1.cena_hurt != F2.cena_hurt
GROUP BY F1.sprzet
Otrzymałam wynik:
1 lodowki kombi
2 zamrazarki
3 piekarniki
4 lodowki dwudrzwiowe
...
16 kuchnie
17 okapy meblowe
Są to wszystkie wartości, jakie występują w kolumnie sprzet
, dlatego cena hurtowa żadnego z nich nie jest cechą stałą.
Pytanie 3: Czy istnieje zależność między klientem a regionem? (np. czyli klienci łączą się w regiony?)
Po pierwsze, sprawdziłam ile różnych klientów powiązanych jest z każdym z regionów:
SELECT region, COUNT(DISTINCT klient) AS 'liczba klientów'
FROM dbo.frania200507
GROUP BY region
co dało wynik:
Meblarze 2
Others 1
Polnoc 4
Poludnie 5
Południe 3
Sieci 5
Wschod 5
Zachod 6
Zachód 4
Następnie sprawdziałam sytuację odwrotną - ile różnych regionów jest związanych z danym klientem:
SELECT klient, COUNT(DISTINCT region) AS 'liczba regionów'
FROM dbo.frania200507
GROUP BY klient
co z kolei zwróciło wynik:
8
AVANS 5
BRW-SA 1
E-WORLD 1
G7 5
MEDIA EXPERT 6
MEDIA MARKT 1
NEONET 2
OKAY 1
PARTNER 5
Na tej podstawie stwierdziłam, że między tymi kolumnami nie istnieją zależności.
Zadanie 4
Zweryfikuj wysokość obrotu względem przychodu (ilosc * cena_hurt), procentowo; posortuj względem tego stosunku.
SELECT grupa,
podgrupa,
sprzet,
ilosc,
cena_hurt,
ilosc * cena_hurt AS 'przychód',
obrot,
obrot * 100 / (ilosc * cena_hurt) AS 'obrót względem przychodu'
FROM dbo.frania200507
W wyniku powyższego polecenia otrzymałam stosunek obrotu do przychodu przyjmujący wartości od 0,06% do 100%. Dla lepszej wizualizacji danych, utworzyłam zestawienie średniego stosunku dla poszczególnych sprzętów:
SELECT sprzet,
AVG(obrot * 100 / (ilosc * cena_hurt)) AS 'średni obrót względem przychodu'
FROM dbo.frania200507
GROUP BY sprzet
ORDER BY 'średni obrót względem przychodu' DESC
Wyniki:
okapy meblowe 82,9895
okapy uniwersalne 82,2433
okapy teleskopowe 82,1779
lodowki dwudrzwiowe 82,142
lodowki kombi 81,228
kuchnie do zabudowy 80,8952
piekarniki 80,7167
chlodziarki 80,4666
kuchnie 80,0568
zmywarki 60 79,9714
mikrofalowki mechanicznie 79,0029
plyty grzejne 78,532
mikrofalowki elektronicznie 78,3457
zmywarki 45 78,3061
zamrazarki 77,6963
pralki front 76,572
okapy kominowe 76,327
Zadanie 5
Polecenie, którego użyłam do uspójnienia danych:
UPDATE dbo.frania200507
SET dbo.frania200507.region = ISNULL(Regiony_Mapa.nazwa_poprawna, dbo.frania200507.region)
FROM dbo.frania200507
INNER JOIN Regiony_Mapa
ON dbo.frania200507.region = Regiony_Mapa.nazwa_wersja