diff --git a/Problem1_Big Countries.sql b/Problem1_Big Countries.sql new file mode 100644 index 0000000..c2dfb2a --- /dev/null +++ b/Problem1_Big Countries.sql @@ -0,0 +1,4 @@ +select name,population,area +from world +where area >= 3000000 +or population >= 25000000 \ No newline at end of file diff --git a/Problem2_NthHighestSalary.sql b/Problem2_NthHighestSalary.sql new file mode 100644 index 0000000..60c25a1 --- /dev/null +++ b/Problem2_NthHighestSalary.sql @@ -0,0 +1,10 @@ +CREATE FUNCTION getNthHighestSalary(N INT) RETURNS INT +BEGIN + RETURN ( + with cte as( + select id,salary,dense_rank() over (order by salary desc) as salaryrank from employee + ) + select distinct ifnull(salary,null) as getNthHighestSalary + from cte where salaryrank=N + ); +END \ No newline at end of file diff --git a/Problem3_DeleteDuplicateEmails.sql b/Problem3_DeleteDuplicateEmails.sql new file mode 100644 index 0000000..d178850 --- /dev/null +++ b/Problem3_DeleteDuplicateEmails.sql @@ -0,0 +1,3 @@ +delete p1 +from person p1 cross join person p2 +where p1.email=p2.email and p1.id>p2.id \ No newline at end of file