Skip to content

Instantly share code, notes, and snippets.

@Nader93
Created May 5, 2019 11:22
Show Gist options
  • Save Nader93/46507bba0f04eadf161de14dbbf8baba to your computer and use it in GitHub Desktop.
Save Nader93/46507bba0f04eadf161de14dbbf8baba to your computer and use it in GitHub Desktop.
New Companies Hackerrank solution (two solutions)
SELECT company.company_code,company.founder,
count(distinct Lead_manager.lead_manager_code),
count(distinct Senior_manager.senior_manager_code),
count(distinct Manager.manager_code),count(distinct Employee.employee_code)
from company
INNER JOIN Lead_Manager
on company.company_code = Lead_Manager.company_code
INNER JOIN Senior_Manager
on company.company_code = Senior_Manager.company_code
INNER JOIN Manager
on company.company_code = Manager.company_code
INNER JOIN Employee
on company.company_code = Employee.company_code
GROUP BY company.company_code,company.founder
order by company.company_code asc
-- -------------------------------- ANOTHER SOLUTION ( BETTER )
select E.company_code, C.founder,
count(distinct lead_manager_code), count(distinct senior_manager_code),
count(distinct manager_code), count(distinct employee_code)
from Employee E inner join Company C on E.company_code = C.company_code group by E.company_code, C.founder order by E.company_code
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment