SQL

프로그래머스 SQL 고득점 KIT(SUM, MAX, MIN)

Bryan Lee 2022. 4. 12. 18:59

프로그래머스 SUM, MAX, MIN 4문제를 한 포스팅에 정리합니다.

프로그래머스 (programmers.co.kr)

 

 

1. 최댓값 구하기

방법 1

- DATETIME으로 시간을 조회합니다. 

- ORDER BY DATETIME DESC으로 시간 역순으로 정렬합니다.

- LIMIT 1으로 값을 하나만 선택합니다.  

방법 2

- MAX(DATETIME)으로 DATETIME 중 가장 큰 값을 선택합니다. 

- 해당 칼럼에 AS 시간이라는 별칭을 붙여줍니다. 

SELECT DATETIME FROM ANIMAL_INS ORDER BY DATETIME DESC LIMIT 1;
SELECT MAX(DATETIME) AS 시간 FROM ANIMAL_INS;

2. 최솟값 구하기

방법 1

- DATETIME으로 시간을 조회합니다. 

- ORDER BY DATETIME으로 시간순으로 정렬합니다.

- LIMIT 1으로 값을 하나만 선택합니다.  

방법 2

- MIN(DATETIME)으로 DATETIME 중 가장 작은 값을 선택합니다. 

- 해당 칼럼에 AS 시간이라는 별칭을 붙여줍니다. 

SELECT DATETIME FROM ANIMAL_INS ORDER BY DATETIME LIMIT 1;
SELECT MIN(DATETIME) AS 시간 FROM ANIMAL_INS;

 

3. 동물 수 구하기

- COUNT(*)으로 전체 동물 수를 구합니다.

SELECT COUNT(*) FROM ANIMAL_INS;

 

4. 중복 제거하기

- COUNT(DISTINCT NAME)으로 중복을 제거한 이름의 개수를 구합니다.

- WHERE NAME IS NOT NULL으로 NULL인 경우를 제거합니다. 

SELECT COUNT(DISTINCT NAME) FROM ANIMAL_INS WHERE NAME IS NOT NULL;