SQL/SQL 문제풀이 스터디
[1주차] 프로그래머스: SELECT 문제풀이
dundunee
2022. 11. 3. 17:37
문제1. 프로그래머스 > SELECT > 과일로 만든 아이스크림 고르기
SELECT F.FLAVOR AS FLAVOR
FROM FIRST_HALF F
INNER JOIN ICECREAM_INFO I ON F.FLAVOR = I.FLAVOR
WHERE F.TOTAL_ORDER > 3000 AND I.INGREDIENT_TYPE = 'fruit_based'
ORDER BY F.TOTAL_ORDER DESC
문제2. 프로그래머스 > SELECT > 12세 이하인 여자환자 목록 출력하기
SELECT PT_NAME,
PT_NO,
GEND_CD,
AGE,
CASE WHEN TLNO IS NULL THEN 'NONE'
ELSE TLNO
END AS TLNO
FROM PATIENT
WHERE AGE <= 12 AND GEND_CD = "W"
ORDER BY AGE DESC, PT_NAME
- SELECT 절에 CASE WHEN문 쓰기: 해당 조건에 대해 다른 컬럼값을 사용하고 싶을 때
문제3. 프로그래머스 > SELECT > 흉부외과 또는 일반의사 목록 출력하기: DATE_FORMAT(변경하고 싶은 날짜, 변경하고 싶은 타입)
SELECT DR_NAME,
DR_ID,
MCDP_CD,
DATE_FORMAT(HIRE_YMD, "%Y-%m-%d") as HIRE_YMD
FROM DOCTOR
WHERE (MCDP_CD = "CS") OR (MCDP_CD = "GS")
ORDER BY HIRE_YMD DESC, DR_NAME
문제4. 프로그래머스 > SELECT > 3월에 태어난 여성 회원 목록 출력하기
SELECT MEMBER_ID,
MEMBER_NAME,
GENDER,
DATE_FORMAT(DATE_OF_BIRTH, "%Y-%m-%d") AS DATE_OF_BIRTH
FROM MEMBER_PROFILE
where MONTH(DATE_FORMAT(DATE_OF_BIRTH, "%Y-%m-%d")) = 3 AND
GENDER = "W" AND
TLNO IS NOT NULL
ORDER BY MEMBER_ID
- ‘YYYY-MM-DD’타입의 날짜 데이터에서 연/월/일 추출하기
- 연: YEAR()
- 월: MONTH()
- 일: DAYOFMONTH()
문제5. 프로그래머스 > SELECT > 강원도에 위치한 생산공장 목록 출력하기
SELECT FACTORY_ID,
FACTORY_NAME,
ADDRESS
FROM FOOD_FACTORY
WHERE LEFT(TLNO, 3) = 033
ORDER BY FACTORY_ID
- 문자열 인덱싱: SUBSTR(), LEFT(), RIEGT()
문제6. 프로그래머스 > SELECT > 서울에 위치한 식당 목록 출력하기
SELECT RI.REST_ID,
RI.REST_NAME,
RI.FOOD_TYPE,
RI.FAVORITES,
RI.ADDRESS,
ROUND(AVG(RR.REVIEW_SCORE),2) AS SCORE
FROM REST_INFO RI
INNER JOIN REST_REVIEW RR ON RI.REST_ID = RR.REST_ID
WHERE LEFT(RI.ADDRESS,2) = '서울'
GROUP BY RI.REST_ID, RI.REST_NAME, RI.FOOD_TYPE, RI.FAVORITES, RI.ADDRESS
ORDER BY SCORE DESC, RI.FAVORITES DESC
문제7. 프로그래머스 > SELECT > 인기있는 아이스크림
SELECT FLAVOR
FROM FIRST_HALF
ORDER BY TOTAL_ORDER DESC, SHIPMENT_ID
문제8. 프로그래머스 > SELECT > 재구매가 일어난 상품과 회원 리스트 구하기
SELECT USER_ID,
PRODUCT_ID
FROM ONLINE_SALE
GROUP BY USER_ID, PRODUCT_ID
HAVING COUNT(*) > 1
ORDER BY USER_ID, PRODUCT_ID DESC
문제9. 프로그래머스 > SELECT > 모든 레코드 조회하기
SELECT *
FROM ANIMAL_INS
ORDER BY ANIMAL_ID
문제10. 프로그래머스 > SELECT > 역순정렬하기
SELECT NAME,
DATETIME
FROM ANIMAL_INS
ORDER BY ANIMAL_ID DESC