기억해야 할것

8. DATETIME에서 DATE로 형 변환 (DATE_FORMAT 햇갈려서 틀림)

10. 가격이 제일 비싼 식품의 정보 출력하기

12. 조건에 맞는 회원수 구하기 (날짜 포메팅)

14. 카테고리 별 상품 개수 구하기

 

1. 여러 기준으로 정렬하기

문제 링크: https://school.programmers.co.kr/learn/courses/30/lessons/59404

정답 코드:

SELECT

ANIMAL_ID,

NAME,

DATETIME

FROM ANIMAL_INS

ORDER BY NAME ASC, DATETIME DESC

오류 상황:

시도 방법:

최종 문제 해결 방법:

 

2. 이름에 el이 들어가는 동물 찾기

문제 링크: https://school.programmers.co.kr/learn/courses/30/lessons/59047

정답 코드:

SELECT

ANIMAL_ID,

NAME

FROM ANIMAL_INS

WHERE ANIMAL_TYPE = 'Dog' and NAME LIKE '%el%'

ORDER BY NAME ASC;

오류 상황:

시도 방법:

최종 문제 해결 방법:

 

 

3. 나이 정보가 없는 회원 수 구하기 

문제 링크:https://school.programmers.co.kr/learn/courses/30/lessons/131528

정답 코드:

SELECT

COUNT(*) AS USERS

FROM USER_INFO

WHERE AGE IS NULL;

오류 상황:

시도 방법:

최종 문제 해결 방법:

 

 

4. 가장 비싼 상품 구하기

문제 링크: https://school.programmers.co.kr/learn/courses/30/lessons/131697

정답 코드:

SELECT MAX(PRICE) AS MAX_PRICE

FROM PRODUCT

오류 상황:

시도 방법:

최종 문제 해결 방법:

 

 

5. NULL 처리하기

문제 링크: https://school.programmers.co.kr/learn/courses/30/lessons/59410

정답 코드:

SELECT

ANIMAL_TYPE,

IFNULL(NAME, 'No name') AS NAME,

SEX_UPON_INTAKE

FROM ANIMAL_INS

ORDER BY ANIMAL_ID ASC;

오류 상황:

시도 방법:

최종 문제 해결 방법:

 

 

6. 경기도에 위치한 식품창고 목록 출력하기

문제 링크:https://school.programmers.co.kr/learn/courses/30/lessons/131114

정답 코드:

SELECT

WAREHOUSE_ID,

WAREHOUSE_NAME,

ADDRESS,

IFNULL(FREEZER_YN, 'N') AS FREEZER_YN

FROM FOOD_WAREHOUSE

WHERE WAREHOUSE_NAME LIKE "%경기%"

ORDER BY WAREHOUSE_ID ASC;

오류 상황:

시도 방법:

최종 문제 해결 방법:

 

 

7. 강원도에 위치한 생산공장 목록 출력하기

문제 링크: https://school.programmers.co.kr/learn/courses/30/lessons/131112

정답 코드:

SELECT

FACTORY_ID,

FACTORY_NAME,

ADDRESS

FROM FOOD_FACTORY

WHERE ADDRESS LIKE "강원도%"

ORDER BY FACTORY_ID ASC;

오류 상황:

시도 방법:

최종 문제 해결 방법:

 

 

8. DATETIME에서 DATE로 형 변환

문제 링크:https://school.programmers.co.kr/learn/courses/30/lessons/59414

정답 코드:

SELECT

ANIMAL_ID,

NAME,

DATE_FORMAT(DATETIME, '%Y-%m-%d') AS "날짜"

FROM ANIMAL_INS

ORDER BY ANIMAL_ID ASC;

오류 상황: DATE_FORMAT에 대한 지식이 없어서 햇갈려 함.

시도 방법: 검색

최종 문제 해결 방법: 기억한 후 문제 품 (DATE_FORMAT 기억하기)

 

 

9. 흉부외과 또는 일반외과 의사 목록 출력하기

문제 링크:https://school.programmers.co.kr/learn/courses/30/lessons/132203

정답 코드:

SELECT

DR_NAME,

DR_ID,

MCDP_CD,

DATE_FORMAT(HIRE_YMD, '%Y-%m-%d') AS HIRE_YMD

FROM DOCTOR

WHERE MCDP_CD IN ('CS', 'GS')

ORDER BY HIRE_YMD DESC, DR_NAME ASC;

오류 상황:

시도 방법:

최종 문제 해결 방법:

 

 

10. 가격이 제일 비싼 식품의 정보 출력하기

문제 링크: https://school.programmers.co.kr/learn/courses/30/lessons/131115

정답 코드:

SELECT

PRODUCT_ID,

PRODUCT_NAME,

PRODUCT_CD,

CATEGORY,

PRICE

FROM FOOD_PRODUCT

ORDER BY PRICE DESC

LIMIT 1

서브쿼리 사용 가능

SELECT

        PRODUCT_ID,

        PRODUCT_NAME,

        PRODUCT_CD,

        CATEGORY,

        PRICE

FROM FOOD_PRODUCT

WHERE PRICE = (

                SELECT MAX(PRICE)

                FROM FOOD_PRODUCT)

오류 상황: 할수 있을거 같아서 서브쿼리 진행, 몇번의 시행착오가 있었기 때문에 서브쿼리에 대한 이해도가 아직 떨어지는 것을 추정

시도 방법: 기존 TIL을 다시 확인함

최종 문제 해결 방법:

 

 

11. 이름이 없는 동물의 아이디

문제 링크:https://school.programmers.co.kr/learn/courses/30/lessons/59039

정답 코드:

SELECT ANIMAL_ID

FROM ANIMAL_INS

WHERE NAME IS NULL

ORDER BY ANIMAL_ID ASC;

오류 상황:

시도 방법:

최종 문제 해결 방법:

 

 

12. 조건에 맞는 회원수 구하기

문제 링크:https://school.programmers.co.kr/learn/courses/30/lessons/131535

정답 코드:

SELECT

        COUNT(*) AS USERS

FROM USER_INFO

WHERE

        JOINED LIKE '2021%'

        AND (AGE BETWEEN 20 AND 29);

오류 상황: +날짜 포메팅 방법도 존재+

SELECT

         COUNT(*) AS USERS

FROM USER_INFO

WHERE

         JOINED LIKE '2021%'

         AND (AGE BETWEEN 20 AND 29);

시도 방법:

최종 문제 해결 방법:

# 날짜 포메팅에 대해선 따로 공부할것#

 

 

13. 중성화 여부 파악하기

문제 링크: https://school.programmers.co.kr/learn/courses/30/lessons/59409

정답 코드: 

SELECT

         ANIMAL_ID,

         NAME,

         CASE

                  WHEN SEX_UPON_INTAKE LIKE '%Neutered%'

                           OR SEX_UPON_INTAKE LIKE '%Spayed%'

                           THEN 'O'

                           ELSE 'X'

                  END AS '중성화'

FROM ANIMAL_INS

오류 상황:

시도 방법:

최종 문제 해결 방법:

 

 

14. 카테고리 별 상품 개수 구하기

문제 링크:https://school.programmers.co.kr/learn/courses/30/lessons/131529

정답 코드:

SELECT

         SUBSTRING(PRODUCT_CODE, 1, 2) AS CATEGORY,

         COUNT(*) AS PRODUCTS

FROM PRODUCT

GROUP BY CATEGORY

ORDER BY PRODUCT_CODE ASC;

오류 상황: SUBSTR 개념을 까먹었음

시도 방법: 작성한 TIL 되돌아봄

최종 문제 해결 방법:

 

 

15. 고양이와 개는 몇 마리 있을까

문제 링크:https://school.programmers.co.kr/learn/courses/30/lessons/59040

정답 코드:

SELECT
	ANIMAL_TYPE,
	COUNT(ANIMAL_TYPE) AS 'count'
FROM ANIMAL_INS
WHERE ANIMAL_TYPE IN ('CAT', 'DOG')
GROUP BY ANIMAL_TYPE
ORDER BY ANIMAL_TYPE ASC

오류 상황:

시도 방법:

최종 문제 해결 방법:

 

'E.코드카타 > 코드카타 Level 1~2' 카테고리의 다른 글

코드카타 Level 1 47, 54, 56  (0) 2026.01.09
코드카타 Level 2 16~20  (0) 2026.01.02
어린 동물 찾기  (0) 2025.12.30
최솟값 구하기  (0) 2025.12.30
상위 n개 레코드  (0) 2025.12.30

+ Recent posts