Raport - poprawka

This commit is contained in:
Agata Lenz 2020-11-04 19:21:15 +01:00
parent 85c7fb4b7e
commit a0e99ff268

View File

@ -8,13 +8,11 @@
Przy pomocy następującego zapytania SQL: Przy pomocy następującego zapytania SQL:
``` ```
SELECT SELECT COUNT(DISTINCT data) AS daty,
COUNT(DISTINCT data) AS daty,
COUNT(DISTINCT klient) AS klienci, COUNT(DISTINCT klient) AS klienci,
COUNT(DISTINCT region) AS regiony, COUNT(DISTINCT region) AS regiony,
COUNT(DISTINCT sprzet) AS towary COUNT(DISTINCT sprzet) AS towary
FROM FROM dbo.frania200507
dbo.frania200507
``` ```
uzyskałam wynik liczby unikalnych wartości: daty - 28, klientów - 10, regionów - 9 oraz towarów - 17. uzyskałam wynik liczby unikalnych wartości: daty - 28, klientów - 10, regionów - 9 oraz towarów - 17.
@ -22,12 +20,12 @@ uzyskałam wynik liczby unikalnych wartości: daty - 28, klientów - 10, region
Poniższe zapytanie SQL zwraca sprzęty, których cena hurtowa zmieniała się w czasie: Poniższe zapytanie SQL zwraca sprzęty, których cena hurtowa zmieniała się w czasie:
``` ```
SELECT F1.sprzet SELECT F1.sprzet
FROM dbo.frania200507 F1 FROM dbo.frania200507 F1
INNER JOIN dbo.frania200507 F2 INNER JOIN dbo.frania200507 F2
ON F1.sprzet = F2.sprzet ON F1.sprzet = F2.sprzet
AND F1.cena_hurt != F2.cena_hurt AND F1.cena_hurt != F2.cena_hurt
GROUP BY F1.sprzet GROUP BY F1.sprzet
``` ```
Otrzymałam wynik: Otrzymałam wynik:
``` ```
@ -46,40 +44,40 @@ Są to wszystkie wartości, jakie występują w kolumnie ```sprzet```, dlatego c
Po pierwsze, sprawdziłam ile różnych klientów powiązanych jest z każdym z regionów: 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' SELECT region, COUNT(DISTINCT klient) AS 'liczba klientów'
FROM dbo.frania200507 FROM dbo.frania200507
GROUP BY region GROUP BY region
``` ```
co dało wynik: co dało wynik:
``` ```
Meblarze 2 Meblarze 2
Others 1 Others 1
Polnoc 4 Polnoc 4
Poludnie 5 Poludnie 5
Południe 3 Południe 3
Sieci 5 Sieci 5
Wschod 5 Wschod 5
Zachod 6 Zachod 6
Zachód 4 Zachód 4
``` ```
Następnie sprawdziałam sytuację odwrotną - ile różnych regionów jest związanych z danym klientem: 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' SELECT klient, COUNT(DISTINCT region) AS 'liczba regionów'
FROM dbo.frania200507 FROM dbo.frania200507
GROUP BY klient GROUP BY klient
``` ```
co z kolei zwróciło wynik: co z kolei zwróciło wynik:
``` ```
8 8
AVANS 5 AVANS 5
BRW-SA 1 BRW-SA 1
E-WORLD 1 E-WORLD 1
G7 5 G7 5
MEDIA EXPERT 6 MEDIA EXPERT 6
MEDIA MARKT 1 MEDIA MARKT 1
NEONET 2 NEONET 2
OKAY 1 OKAY 1
PARTNER 5 PARTNER 5
``` ```
Na tej podstawie stwierdziłam, że między tymi kolumnami nie istnieją zależności. Na tej podstawie stwierdziłam, że między tymi kolumnami nie istnieją zależności.
@ -87,20 +85,22 @@ Na tej podstawie stwierdziłam, że między tymi kolumnami nie istnieją zależn
#### Zweryfikuj wysokość obrotu względem przychodu (ilosc * cena_hurt), procentowo; posortuj względem tego stosunku. #### Zweryfikuj wysokość obrotu względem przychodu (ilosc * cena_hurt), procentowo; posortuj względem tego stosunku.
``` ```
SELECT obrot, SELECT grupa,
CAST(ilosc AS FLOAT) * cena_hurt AS 'przychód', podgrupa,
CAST(CONVERT(numeric(10,2),REPLACE(obrot,',','.')) AS FLOAT) * 100 / (CAST(ilosc AS FLOAT) * cena_hurt) sprzet,
AS 'obrót względem przychodu' ilosc,
FROM dbo.frania200507 cena_hurt,
ORDER BY 'obrót względem przychodu' DESC 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%. 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: Dla lepszej wizualizacji danych, utworzyłam zestawienie średniego stosunku dla poszczególnych sprzętów:
``` ```
SELECT sprzet, SELECT sprzet,
AVG(CAST(CONVERT(numeric(10,2),REPLACE(obrot,',','.')) AS FLOAT) * 100 / (CAST(ilosc AS FLOAT) * cena_hurt)) AVG(obrot * 100 / (ilosc * cena_hurt)) AS 'średni obrót względem przychodu'
AS 'średni obrót względem przychodu' FROM dbo.frania200507
FROM dbo.frania200507
GROUP BY sprzet GROUP BY sprzet
ORDER BY 'średni obrót względem przychodu' DESC ORDER BY 'średni obrót względem przychodu' DESC
@ -108,31 +108,31 @@ Dla lepszej wizualizacji danych, utworzyłam zestawienie średniego stosunku dla
Wyniki: Wyniki:
``` ```
okapy meblowe 82,9895988001421 okapy meblowe 82,9895
okapy uniwersalne 82,2433847210363 okapy uniwersalne 82,2433
okapy teleskopowe 82,1780211677618 okapy teleskopowe 82,1779
lodowki dwudrzwiowe 82,1420700891221 lodowki dwudrzwiowe 82,142
lodowki kombi 81,2281265142766 lodowki kombi 81,228
kuchnie do zabudowy 80,8952787083378 kuchnie do zabudowy 80,8952
piekarniki 80,7167890564686 piekarniki 80,7167
chlodziarki 80,4666737250249 chlodziarki 80,4666
kuchnie 80,0569471316096 kuchnie 80,0568
zmywarki 60 79,9715094269422 zmywarki 60 79,9714
mikrofalowki mechanicznie 79,0030279110425 mikrofalowki mechanicznie 79,0029
plyty grzejne 78,5321363449956 plyty grzejne 78,532
mikrofalowki elektronicznie 78,3457986962122 mikrofalowki elektronicznie 78,3457
zmywarki 45 78,3061623475599 zmywarki 45 78,3061
zamrazarki 77,6963817488054 zamrazarki 77,6963
pralki front 76,5720823184465 pralki front 76,572
okapy kominowe 76,327101123574 okapy kominowe 76,327
``` ```
### Zadanie 5 ### Zadanie 5
Polecenie, którego użyłam do uspójnienia danych: Polecenie, którego użyłam do uspójnienia danych:
``` ```
UPDATE dbo.frania200507 UPDATE dbo.frania200507
SET dbo.frania200507.region = ISNULL(Regiony_Mapa.nazwa_poprawna, dbo.frania200507.region) SET dbo.frania200507.region = ISNULL(Regiony_Mapa.nazwa_poprawna, dbo.frania200507.region)
FROM dbo.frania200507 FROM dbo.frania200507
INNER JOIN Regiony_Mapa INNER JOIN Regiony_Mapa
ON dbo.frania200507.region = Regiony_Mapa.nazwa_wersja ON dbo.frania200507.region = Regiony_Mapa.nazwa_wersja
``` ```