프로그래머스 SQL Lv.1 문제 풀이 (2)

seo0·2024년 6월 13일

SQL

목록 보기
1/8
post-thumbnail

SUM, MAX, MIN



최댓값 구하기

가장 최근에 들어온 동물은 언제 들어왔는지 조회하는 SQL 문을 작성해주세요.

SELECT MAX(DATETIME) AS DATETIME
  FROM ANIMAL_INS

가장 비싼 상품 구하기

PRODUCT 테이블에서 판매 중인 상품 중 가장 높은 판매가를 출력하는 SQL문을 작성해주세요. 이때 컬럼명은 MAX_PRICE로 지정해주세요.

SELECT MAX(PRICE) AS MAX_PRICE
  FROM PRODUCT

잡은 물고기 중 가장 큰 물고기의 길이 구하기

FISH_INFO 테이블에서 잡은 물고기 중 가장 큰 물고기의 길이를 'cm' 를 붙여 출력하는 SQL 문을 작성해주세요.
이 때 컬럼명은 'MAX_LENGTH' 로 지정해주세요.

SELECT CONCAT(MAX(LENGTH), 'cm') AS MAX_LENGTH
  FROM FISH_INFO




IS NULL



## 이름없는 동물의 아이디 >동물 보호소에 들어온 동물 중, 이름이 없는 채로 들어온 동물의 ID를 조회하는 SQL 문을 작성해주세요. 단, ID는 오름차순 정렬되어야 합니다.
SELECT ANIMAL_ID
  FROM ANIMAL_INS
 WHERE NAME IS NULL

이름있는 동물의 아이디

SELECT ANIMAL_ID
  FROM ANIMAL_INS
 WHERE NAME IS NOT NULL

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

FOOD_WAREHOUSE 테이블에서 경기도에 위치한 창고의 ID, 이름, 주소, 냉동시설 여부를 조회하는 SQL문을 작성해주세요. 이때 냉동시설 여부가 NULL인 경우, 'N'으로 출력시켜 주시고 결과는 창고 ID를 기준으로 오름차순 정렬해주세요.

  SELECT WAREHOUSE_ID
       , WAREHOUSE_NAME
       , ADDRESS
       , IFNULL(FREEZER_YN, 'N') AS FREEZER_YN
    FROM FOOD_WAREHOUSE
   WHERE ADDRESS LIKE '경기도%'
ORDER BY WAREHOUSE_ID

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

USER_INFO 테이블에서 나이 정보가 없는 회원이 몇 명인지 출력하는 SQL문을 작성해주세요. 이때 컬럼명은 USERS로 지정해주세요.

SELECT COUNT(0) AS USERS
  FROM USER_INFO
 WHERE AGE IS NULL

잡은 물고기의 평균 길이 구하기

잡은 물고기의 평균 길이를 출력하는 SQL문을 작성해주세요.
평균 길이를 나타내는 컬럼 명은 AVERAGE_LENGTH로 해주세요.
평균 길이는 소수점 3째자리에서 반올림하며, 10cm 이하의 물고기들은 10cm 로 취급하여 평균 길이를 구해주세요.

SELECT ROUND(AVG(IFNULL(LENGTH, 10)), 2) AS AVERAGE_LENGTH
  FROM FISH_INFO




String, Data



자동차 대여 기록에서 장기/단기 대여 구분하기

CAR_RENTAL_COMPANY_RENTAL_HISTORY 테이블에서 대여 시작일이 2022년 9월에 속하는 대여 기록에 대해서 대여 기간이 30일 이상이면 '장기 대여' 그렇지 않으면 '단기 대여' 로 표시하는 컬럼(컬럼명: RENT_TYPE)을 추가하여 대여기록을 출력하는 SQL문을 작성해주세요. 결과는 대여 기록 ID를 기준으로 내림차순 정렬해주세요.

  SELECT HISTORY_ID
       , CAR_ID
       , DATE_FORMAT(START_DATE, '%Y-%m-%d') AS START_DATE
       , DATE_FORMAT(END_DATE, '%Y-%m-%d') AS END_DATE
       , CASE WHEN DATEDIFF(END_DATE, START_DATE) + 1 >= 30 THEN '장기 대여'
         ELSE '단기 대여'
         END AS RENT_TYPE
    FROM CAR_RENTAL_COMPANY_RENTAL_HISTORY 
   WHERE START_DATE LIKE '2022-09%'
ORDER BY HISTORY_ID DESC

특정 옵션이 포함된 자동차 리스트 구하기

CAR_RENTAL_COMPANY_CAR 테이블에서 '네비게이션' 옵션이 포함된 자동차 리스트를 출력하는 SQL문을 작성해주세요. 결과는 자동차 ID를 기준으로 내림차순 정렬해주세요.

  SELECT CAR_ID
       , CAR_TYPE
       , DAILY_FEE
       , OPTIONS
    FROM CAR_RENTAL_COMPANY_CAR 
   WHERE OPTIONS LIKE '%네비게이션%'
ORDER BY CAR_ID DESC

한 해에 잡은 물고기 수 구하기

FISH_INFO 테이블에서 2021년도에 잡은 물고기 수를 출력하는 SQL 문을 작성해주세요.
이 때 컬럼명은 'FISH_COUNT' 로 지정해주세요.

SELECT COUNT(0) AS FISH_COUNT
  FROM FISH_INFO
 WHERE TIME LIKE '2021%'




0개의 댓글