The PADS | Hackerrank

Author: neptune | 21st-Nov-2022
#SQL #Hackerrank

Problem Statement: Generate the following two result sets:

1. Query an alphabetically ordered list of all names in OCCUPATIONS, immediately followed by the first letter of each profession as a parenthetical (i.e.: enclosed in parentheses). 

For example: ActorName(A), DoctorName(D), ProfessorName(P), and SingerName(S).


2. Query the number of occurrences of each occupation in OCCUPATIONS. Sort the occurrences in ascending order, and output them in the following format:

Format: There are a total of [occupation_count] [occupation]s.

where [occupation_count] is the number of occurrences of occupation in OCCUPATIONS and [occupation] is the lowercase occupation name. If more than one Occupation has the same [occupation_count], they should be ordered alphabetically.

Note: There will be at least two entries in the table for each type of occupation.


Input Format

The OCCUPATIONS table is described as follows:

 

Occupation will only contain one of the following values: Doctor, Professor, Singer, or Actor.


Sample Input

An OCCUPATIONS table that contains the following records:


Sample Output

Ashely(P)

Christeen(P)

Jane(A)

Jenny(D)

Julia(A)

Ketty(P)

Maria(A)

Meera(S)

Priya(S)

Samantha(D)

There are a total of 2 doctors.

There are a total of 2 singers.

There are a total of 3 actors.

There are a total of 3 professors.


Solution:

For this challenge, we must:

We will write two select queries.


Query 1:

Select concat(name, '(', left(occupation, 1), ')') 

from occupations 

order by name;

Query 2:

Select concat("There ", if(count(1) > 1, "are", "is"), 

              " a total of ", count(1), " ", lower(occupation), 

              if(count(1) > 1, "s.", "."))

from occupations

group by occupation

order by count(occupation);


Output:

Aamina(D)

Ashley(P)

Belvet(P)

Britney(P)

Christeen(S)

Eve(A)

Jane(S)

Jennifer(A)

Jenny(S)

Julia(D)

Ketty(A)

Kristeen(S)

Maria(P)

Meera(P)

Naomi(P)

Priya(D)

Priyanka(P)

Samantha(A)

There are a total of 3 doctors.

There are a total of 4 actors.

There are a total of 4 singers. 

There are a total of 7 professors.



Hope you learn something !!!

If you have any questions let me know in the comment section.





Related Blogs
1. Basic SQL Select Query of Hacker Rank.
Author: neptune | 20th-Apr-2022
#SQL #Hackerrank
Problem Statement : Query all columns for all American cities in the CITY table with populations larger than 100000. The CountryCode for America is USA...

Modified 0-1 knapsack problem | Frsco Play Hackerrank
Author: neptune | 05th-Nov-2023
#Hackerrank #Problem Solving
An automobile mechanic wants to buy a set of spare parts from a manufacturing unit. Goal is to maximise the amount of money the mechanic can earn...

AngularJS - Know Tech Frameworks | Fresco Play
Author: neptune | 05th-Nov-2023
#Hackerrank #Problem Solving
Build an application that displays the framework details using AngularJS routing. We will build an application that displays the Tech Frontend and Backend frameworks...

30+ SQL Interview Questions
Author: neptune | 05th-Jan-2023
#Interview #SQL
Data Definition Language (DDL) – It allows end-users to CREATE, ALTER, and DELETE database objects...

PySpark Milestone Black Friday Sales Data | Fresco Play Hackerrank
Author: neptune | 05th-Nov-2023
#Data Science #Hackerrank
Welcome to the Spark Challenge. You are provided with the Black Friday sales data and we as a big data developer needs to analyze and fetch the required data...

Python - Number Based Problem | Hackerrank
Author: neptune | 17th-Aug-2023
#Hackerrank #Problem Solving
Determine whether the number in descending order is a prime or not. If the number is a prime, then print "Sorted Number is a prime number," otherwise, print "Sorted Number is not a prime number."..

View More