-
Notifications
You must be signed in to change notification settings - Fork 0
/
CoviditaliaAnalysis.sql
137 lines (72 loc) · 3.77 KB
/
CoviditaliaAnalysis.sql
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
use covid;
--UPDATE DATASET
UPDATE popFasciaVacc
SET
fascia_anagrafica = REPLACE(fascia_anagrafica, '43800', '12-19');
UPDATE popFasciaVacc
SET
fascia_anagrafica = REPLACE(fascia_anagrafica, '44870', '05-11');
--Merging two datasets
select *
from popolazione as p
join covidIta as c on p.codice_regione = c.codice_regione
select denominazione_regione, data, totale_casi, nuovi_positivi, deceduti, popolazione
from ItaliaCovid
order by 1,2;
-- Looking at total cases vs total deaths
-- Show Letality rate daily in your region
set arithabort,ansi_warnings off
go
select denominazione_regione, deceduti,nuovi_positivi,data,
(deceduti-lag(deceduti, 1) over (order by denominazione_regione, data)) as DecedutiGiornalieri,
((deceduti-lag(deceduti, 1) over (order by denominazione_regione, data))/nuovi_positivi)*100 as LetalityRate
from ItaliaCovid
where denominazione_regione = 'Sicilia'
;
--Looking total cases vs Population
--Show what percentage of population got Covid
select denominazione_regione, data, totale_casi, popolazione, (totale_casi/popolazione)*100 as PercentualeInfetti
from ItaliaCovid
order by 1,2;
--Looking at Regions with highest infection rate compared to population
select denominazione_regione, max(totale_casi) as highestInfectionCount, popolazione, max((totale_casi/popolazione))*100 as PercentualeInfetti
from ItaliaCovid
group by denominazione_regione, popolazione
order by PercentualeInfetti desc;
--Showing Regions with highest Death count per Population
select denominazione_regione, max(deceduti) as TotalDeaths, popolazione, (max(deceduti)/popolazione)*100 RaterespectPopulation
from ItaliaCovid
group by denominazione_regione, popolazione
order by RaterespectPopulation desc;
-- Global Numbers
select sum(max_deceduti) as somma_deceduti,sum(max_pos) as sum_pos,(sum(max_deceduti)/sum(max_pos))*100 as PercentualeDeceduti
from
(
select denominazione_regione, sum(nuovi_positivi) as max_pos, max(deceduti) as max_deceduti
from ItaliaCovid
group by denominazione_regione
) as PercentualeDeceduti;
--Positivity rate per region daily
select denominazione_regione, data, totale_positivi, nuovi_positivi,tamponi,tamponi-lag(tamponi, 1) over (order by denominazione_regione, data) as TamponiGiornalieri,
(nuovi_positivi)/(tamponi-lag(tamponi, 1) over (order by denominazione_regione, data))*100 as TassoPositività
from covidIta;
--Showing deaths daily by date and regions
select codice_regione,denominazione_regione, data,deceduti, deceduti-lag(deceduti, 1) over (order by denominazione_regione, data) as differenza_deceduti
from ItaliaCovid;
--Showing total somministration vaccin per region with resepct population
select pv.nome_area, sum(prima_dose) as tot_p_dose,sum(seconda_dose) as tot_s_dose, sum(dose_addizionale_booster) as tot_booster,
sum(prima_dose + seconda_dose + dose_addizionale_booster) totale_somministrazioni, popolazione,
(sum(prima_dose)/popolazione)*100 as PercentVaccinationFirst, (sum(seconda_dose)/popolazione)*100 as PercentVaccinationSecond,
(sum(dose_addizionale_booster)/popolazione)*100 as PercentVaccinationBooster
from popFasciaVacc cv
join PopVacc pv on cv.nome_area = pv.nome_area
group by pv.nome_area, popolazione
order by 7 desc;
--Showing total somministration vaccin per age-class
select pv.nome_area,fascia_anagrafica,
(sum(prima_dose)/PopFascia)*100 as PercentVaccinationFirst, (sum(seconda_dose)/PopFascia)*100 as PercentVaccinationSecond,
(sum(dose_addizionale_booster)/PopFascia)*100 as PercentVaccinationBooster
from popFasciaVacc cv
join PopVacc pv on cv.nome_area = pv.nome_area
group by pv.nome_area, fascia_anagrafica,PopFascia
order by 1,2;