설득이 2024. 3. 13. 20:09
모든 레코드 조회하기
동물 보호소에 들어온 모든 동물의 정보를 ANIMAL_ID순으로 조회하는 SQL문을 작성해주세요.
  •  ANIMAL_ID순으로 조회 : order by
SELECT * 
FROM ANIMAL_INS 
ORDER BY ANIMAL_ID;

 

Second Highest Salary
Employee 테이블에서 두 번째로 높은 급여를 찾는 솔루션을 작성하세요. 두 번째로 높은 급여가 없으면 null을 반환
  • 높은 급여 : max
  • 두번째 : where salary < (select max(salary) from Employee)
select max(salary) as "SecondHighestSalary" 
from Employee 
where salary<(select max(salary) from Employee);

 

Top Competitors
두 개 이상의 챌린지에서 만점을 달성한 해커의 이름과 hacker_id를 인쇄하는 쿼리를 작성
해커가 만점을 획득한 총 챌린지 수를 기준으로 내림차순으로 출력을 정렬하세요.
두 명 이상의 해커가 동일한 수의 챌린지에서 만점을 받은 경우 hacker_id를 오름차순으로 정렬합니다.
  • join
  • 두 명 이상의 해커 : group by
  • 두 명 이상의 해커 : count (*) > 1
  •  hacker_id를 오름차순 : order by 
select h.hacker_id, h.name
from Hackers h
inner join Submissions s on h.hacker_id = s.hacker_id
inner join Challenges c on s.challenge_id = c.challenge_id
inner join Difficulty d on c.difficulty_level = d.difficulty_level and s.score = d.score
group by h.hacker_id, h.name
having count(*) > 1
order by count(*) desc, h.hacker_id;