SQL/Programmers

[SQL/Programmers] SUM, MAX, MIN(MySQL)

아웃라이어_ 2020. 6. 5. 11:41

https://programmers.co.kr/learn/challenges?tab=sql_practice_kit

 

코딩테스트 연습

기초부터 차근차근, 직접 코드를 작성해 보세요.

programmers.co.kr

문제설명

ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다.

ANIMAL_INS 테이블 구조는 다음과 같습니다.

 - ANIMAL_ID(VARCHAR(N), NOT NULL): 동물의 아이디

 - ANIMAL_TYPE(VARCHAR(N), NOT NULL): 생물 종

 - DATETIME(DATETIME, NOT NULL): 보호 시작일

 - INTAKE_CONDITION(VARCHAR(N), NOT NULL): 보호 시작 시 상태

 - NAME(VARCHAR(N)): 이름

 - SEX_UPON_INTAKE(VARCHAR(N), NOT NULL): 성별 및 중성화 여부

 

Q. 최댓값 구하기

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

 

A. 단일 행 서브쿼리를 사용하여 WHERE절의 조건으로 추가해주면 쉽게 해결할 수 있습니다.

    MAX() 함수는 최댓값을 반환합니다. 

 

Q. 최솟값 구하기

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

 

A. 단일 행 서브쿼리를 사용하여 WHERE절의 조건으로 추가해주면 쉽게 해결할 수 있습니다.

    MIN() 함수는 최솟값을 반환합니다. 

 

Q. 동물 수 구하기

동물 보호소에 동물이 몇 마리 들어왔는지 조회하는 SQL문을 작성해주세요.

 

A. COUNT() 함수는 데이터의 개수를 반환해줍니다.

   "AS" 접속사를 사용해 출력되는 변수의 별칭을 지정할 수 있습니다. 

 

Q. 중복 제거하기

동물 보호소에 들어온 동물의 이름은 몇 개인지 조회하는 SQL문을 작성해주세요.

이때 이름이 NULL인 경우는 집계하지 않으며 중복되는 이름은 하나로 칩니다.

 

 

A. DISTINCT절을 이용하면 중복을 쉽게 제거할 수 있습니다.

 

'SQL > Programmers' 카테고리의 다른 글

[SQL/Programmers] String, Date(MySQL)  (0) 2020.06.05
[SQL/Programmers] JOIN(MySQL)  (0) 2020.06.05
[SQL/Programmers] IS NULL(MySQL)  (0) 2020.06.05
[SQL/Programmers] GROUP BY(MySQL)  (0) 2020.06.05
[SQL/Programmers] SELECT(MySQL)  (0) 2020.06.05