Let's see how our dataset looks like
Observations
- Which registrar has done most Aadhar card Appointment ?
- The reason for above can be more no of Enrolment agency in a particular Registrar. Let’s see the distribution of Enrolment Agency in each Registrar.
- Let’s see which states have most Aadhar Registrations.
- Let’s see the sex ratio of Aadhar enrolment applicants.
Select Registrar,Round((Count(ID)/(Select Count(*) From Data))*100,2) as Cnt From data Group By Registrar Order by 2 desc
SELECT d1.Registrar, (Select Count(d2.[Enrolment Agency]) From Data d2 Where d2.Registrar = d1.Registrar) AS [No of Enrol Agency] FROM Data AS d1 GROUP BY d1.Registrar ORDER BY 2 DESC;
Select State ,Round((Count(ID)/(Select Count(ID) From Data))*100,2) as [% of Aadhar reg] From Data Group By State Order by 2 desc;
Select Gender,Round((Count(ID)/(Select Count(ID) From Data))*100,5) as [No of applicants] From Data Group By Gender
Select (Select Count(*) From Data d2 Where d2.Age >= 0 AND d2.Age <=15) as [Child (0-15)], (Select Count(*) From Data d2 Where d2.Age > 15 AND d2.Age <= 22) as [Teen (15-22)], (Select Count(*) From Data d2 Where d2.Age > 22 AND d2.Age <= 35) as [Youth (22-35)], (Select Count(*) From Data d2 Where d2.Age > 35 AND d2.Age <=55) as [Adult (35-55)], (Select Count(*) From Data d2 Where d2.Age > 55 AND d2.Age <=118) as [Senior_citizen (55-118)] From data d1 Where d1.ID = 1
Select District,Count(*) as Cnt From Data Where Gender = "F" Group By District,Gender order by 3
Select TOP 30 [Enrolment Agency], Round((Sum([Aadhaar Generated])/(Select Sum([Aadhaar Generated])From Data))*100,2) as total_adhar_generated From data
- Group By [Enrolment Agency] Order by 2 DESC;
Select Top 30 [Enrolment Agency] , Round((Sum([Enrolment Rejected])/(Select Sum([Enrolment Rejected])
From Data))*100,2) as [% of Enrolment Rejection]
From Data Group By [Enrolment Agency] Order by 2 desc;
Select State, Round((Count(ID)/(Select Count(ID) From Data))*100,2) as Per_of_App From data Group By State;
SELECT d1.State,(Select Count(ID) From
Data d2 Where d2.State = d1.State)
as no_of_applicants,Round
(((Select Sum([Enrolment Rejected])
From Data d2 Where d2.State = d1.State)/no_of_applicants)*100,2)
as per_of_rejected,
(100 - per_of_rejected)
as per_of_accepted
From Data d1 Group By d1.State;
Select State,Round((Sum([Aadhaar Generated])/(Select Sum([Aadhaar Generated])From
Data))*100,2) as [% of Aadhar Generated] From Data Group By State order by 2 desc;
Select Sum([Residents providing Email]) as total_email_proveded ,
Sum([Aadhaar Generated]) as total_aadhr_genreated
From Data
Select Sum([Residents providing mobile number]) as total_mobile_proveded ,
Sum([Aadhaar Generated]) as total_aadhr_genreated
From Data
Select [Age_group],Sum([Aadhaar generated]) as [No_of_Aadhar_Generated] From(
SELECT Age, [Aadhaar Generated],
Switch(
[Age] > 0 AND [Age] <= 15 , "Child",
[Age] > 15 AND [Age] <= 22 , "Teen",
[Age] > 22 AND [Age] <= 35 , "Youth",
[Age] > 35 AND [Age] <= 55 , "Adult",
[Age] > 55 AND [Age] <= 118 , "Senior_Citizen",
[Age] = 0 , "Invalid_Age-0"
) AS Age_group
FROM Data)
Group By [Age_group]
Select gender,Sum([Aadhaar generated]) as [no of aadhar generated] From data Group By gender
SELECT Age_group, Gender, Count(*) AS Cnt
FROM (SELECT Age, [Aadhaar Generated],Gender, Switch( [Age] > 0 AND [Age] <= 15 , "Child", [Age] > 15 AND [Age] <= 22 , "Teen", [Age] > 22 AND [Age] <= 35 , "Youth", [Age] > 35 AND [Age] <= 55 , "Adult", [Age] > 55 AND [Age] <= 118 , "Senior_Citizen", [Age] = 0 , "Unknown-age" ) AS Age_group FROM Data) AS [%$##@_Alias]
GROUP BY Age_group, Gender;
- This is a research project given in the SQL Module
- Dataset used
- Course Content - Ivy