초보 개발자의 이야기, 릿허브

[MySQL] 프로그래머스 SQL 동물 수 구하기 본문

코딩테스트/📒 SQL

[MySQL] 프로그래머스 SQL 동물 수 구하기

릿99 2021. 10. 6. 09:51
728x90
반응형
1. 문제이해

https://programmers.co.kr/learn/courses/30/lessons/59406

 

코딩테스트 연습 - 동물 수 구하기

ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디

programmers.co.kr

 

위와 같은 정보를 가진 ANIMAL_INS 테이블에서

동물 보호소에 들어온 동물들이 몇 마리인지 조회하는 SQL문을 작성하는 것이 목표이다.

 

 

 

2. 문제풀이

 

ANIMAL_INS 테이블에서, 동물들이 몇 마리인지를 추출하는 문제이다.

위 테이블에서는, 하나의 튜플에 하나의 동물의 정보가 담겨있는데,

이러한 테이블에서 동물 보호소에 들어온 동물들이 몇 마리인지 조회한다는 것은

테이블의 모든 튜플의 수를 세어주는 것과 동일하다.

따라서, COUNT() 문법을 이용해 모든 튜플의 수를 세어주었다.

 

 

 

3. 정답
SELECT COUNT(*) AS "count"
FROM ANIMAL_INS

SELECT : 모든 튜플(*) 의 개수를 카운트(COUNT)

별칭(AS) 를 사용해 'count' 라고 따로 명명해줌.

FROM : ANIMAL_INS에서

 

보호소에 들어온 동물들이 몇 마리인지를 조회하는 SQL문으로,

SELECT 절의 COUNT를 이용해, 테이블의 모든 튜플, 즉, 모든 동물들을 세주었다.

 

COUNT()란, SQL문에서 조건을 충족시키는 모든 튜플들의 수를 반환하는 문법으로,

대표적인 COUNT의 매개변수로는 '*' 과 'DISTINCT'가 있다.

'*' 는 모든 튜플의 수를 반환한다는 뜻이고, (COUNT(*))

'DISTINCT'는 중복을 제거한 튜플의 수를 반환한다는 뜻이다. (COUNT(DISTINCT(*))

 

 


SQL 구문을 기본적인 것부터 시작해보고 있는데,

조만간 개념에 관한 내용을 쭉 적어서 정리본으로 한번 올려도 괜찮을 듯 싶다.

일단은 문제부터 쭉 풀어나가야지💪

 

 

 

 

 

 

728x90
반응형