Test

[MySQL] 그룹 스터디 1일 차 (10/16)

루루23 2024. 10. 16. 18:06
반응형

문제 1. 프로그래머스 LV3 《있었는데요 없었습니다》 

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

내 답안

SELECT I.animal_id, I.name
FROM animal_ins I 
JOIN animal_outs O ON I.animal_id = O.animal_id
WHERE I.datetime - O.datetime > 0
ORDER BY I.datetime;

 

 

문제2. 프로그래머스  LV2 《재구매가 일어난 상품과 회원 리스트 구하기》 

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

내 답안

SELECT user_id, product_id
FROM online_sale
GROUP BY user_id, product_id
HAVING COUNT(*) > 1
ORDER BY user_id, product_id DESC;

 

 

문제 3. 프로그래머스  LV2 《조건에 맞는 사원 정보 조회하기》

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

내 답안 1 : ORDER BY, LIMIT 이용

SELECT SUM(score) score, E.emp_no, emp_name, position, email
FROM hr_employees E
JOIN hr_grade G ON E.emp_no = G.emp_no 
WHERE year = 2022
GROUP BY emp_no
ORDER BY score DESC
LIMIT 1;

 

내 답안 2 : MAX 이용

SELECT SUM(SCORE) SCORE, E.EMP_NO, EMP_NAME, POSITION, EMAIL
FROM HR_EMPLOYEES E
JOIN HR_GRADE G ON E.EMP_NO = G.EMP_NO
WHERE YEAR = 2022
GROUP BY EMP_NO
HAVING SCORE = (
    SELECT MAX(SUM_SCORE) FROM (
        SELECT SUM(SCORE) SUM_SCORE
        FROM HR_GRADE
        GROUP BY EMP_NO
    ) MAX_SCORE
);

 

 

문제 4. 프로그래머스  LV2 《물고기 종류 별 잡은 수 구하기

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

내 답안

SELECT COUNT(*) fish_count, fish_name
FROM fish_info FI
JOIN fish_name_info FNI ON FI.fish_type = FNI.fish_type
GROUP BY fish_name
ORDER BY 1 DESC;

 

반응형