[ Programmers ] Lv2. 최솟값 구하기 (MySQL)

ma.caron_g·2022년 11월 9일
0

MySQL Algorithm

목록 보기
20/20
post-thumbnail

1. Problem 📃

[ 최솟값 구하기 ]

https://school.programmers.co.kr/learn/courses/30/lessons/59038


[ 문제 설명 ]

ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디, 생물 종, 보호 시작일, 보호 시작 시 상태, 이름, 성별 및 중성화 여부를 나타냅니다.

NAMETYPENULLABLE
ANIMAL_IDVARCHAR(N)FALSE
ANIMAL_TYPEVARCHAR(N)FALSE
DATETIMEDATETIMEFALSE
INTAKE_CONDITIONVARCHAR(N)FALSE
NAMEVARCHAR(N)TRUE
SEX_UPON_INTAKEVARCHAR(N)FALSE

동물 보호소에 가장 먼저 들어온 동물은 언제 들어왔는지 조회하는 SQL 문을 작성해주세요.


2. Example 📚

[ 입출력 예시 ]

예를 들어 ANIMAL_INS 테이블이 다음과 같다면

ANIMAL_IDANIMAL_TYPEDATETIMEINTAKE_CONDITIONNAMESEX_UPON_INTAKE
A399552Dog2013-10-14 15:38:00NormalJackNeutered Male
A379998Dog2013-10-23 11:42:00NormalDiscipleIntact Male
A370852Dog2013-11-03 15:04:00NormalKatieSpayed Female
A403564Dog2013-11-18 17:03:00NormalAnnaSpayed Female

가장 먼저 들어온 동물은 Jack이고, Jack은 2013-10-14 15:38:00에 들어왔습니다. 따라서 SQL문을 실행하면 다음과 같이 나와야 합니다.

시간
2013-10-14 15:38:00

※ 컬럼 이름(위 예제에서는 "시간")은 일치하지 않아도 됩니다.


3. Solution 🔑

  1. 동물 보호소에 보호 시작일(DATETIME)이 가장 빠른 동물 조회
    • SELECT MIN(DATETIME) AS '시간'
  2. 해당 테이블에서 (FROM [테이블명])
    • FROM ANIMAL_INS

4. Code 💻

SELECT MIN(DATETIME) AS '시간'
FROM ANIMAL_INS

MIN을 사용하지 않고 DATETIME을 기준으로 오름차순 정렬 후 상위 1개의 레코드만을 출력하면서 값을 나타낼 수도 있다.

SELECT DATETIME AS '시간'
FROM ANIMAL_INS
ORDER BY DATETIME ASC
LIMIT 1

5. Growth 🍄

  • MIN[필드명] : 레코드 중 지정한 필드에서 가장 작은 값을 가져옴.
profile
다른 사람이 만든 것을 소비하는 활동보다, 내가 생산적인 활동을 하는 시간이 더 많도록 생활화 하자.

0개의 댓글