코테/SQL
[프로그래머스] 레벨02. 중복 제거하기.
slown
2023. 3. 6. 19:11
문제
문제 설명
ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디, 생물 종, 보호 시작일, 보호 시작 시 상태, 이름, 성별 및 중성화 여부를 나타냅니다.
NAME | TYPE | NULLABLE |
ANIMAL_ID | VARCHAR(N) | FALSE |
ANIMAL_TYPE | VARCHAR(N) | FALSE |
DATETIME | DATETIME | FALSE |
INTAKE_CONDITION | VARCHAR(N) | FALSE |
NAME | VARCHAR(N) | TRUE |
SEX_UPON_INTAKE | VARCHAR(N) | FALSE |
동물 보호소에 들어온 동물의 이름은 몇 개인지 조회하는 SQL 문을 작성해주세요. 이때 이름이 NULL인 경우는 집계하지 않으며 중복되는 이름은 하나로 칩니다.
요구사항
1.보호소에 들어온 동물의 이름
2.이름이 NULL인 경우에는 집계를 하지 않는다.
작성답안
SELECT
COUNT(DISTINCT(NAME)) AS NAME
FROM
ANIMAL_INS
name컬럼에서 null인 경우도 있으니 distinct()를 사용해서 중복처리를 막고 그 다음에 count()로 해당 컬럼에 있는 수를
카운트 한 뒤 NAME으로 별칭을 달면 끝나는 간단한 문제이다.