중복 제거하기
기본정보
ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다.
ANIMAL_INS 테이블 구조는 다음과 같으며,
ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각
동물의 아이디, 생물 종, 보호 시작일, 보호 시작 시 상태, 이름, 성별 및 중성화 여부를 나타냅니다.
ANIMAL_INS 테이블
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인 경우는 집계하지 않으며 중복되는 이름은 하나로 칩니다.
해설
SELECT COUNT(DISTINCT 칼럼명) FROM (테이블명) WHERE 칼럼조건;
SELECT COUNT(DISTINCT NAME) FROM ANIMAL_INS WHERE NAME IS NOT NULL;
// DISTINCT 칼럼명 - 칼럼 중복 제거
// IS NOT NULL - NULL값 출력x
**중복값 제거를 위해서는
1.DISTINCT 사용
2.GROUP BY 사용
COUNT(칼럼) 사용 시 DISTINCT 는 중복되지않는 값 전체의 수 , GROUP BY는 각각의 수
programmers.co.kr/learn/challenges?tab=sql_practice_kit
코딩테스트 연습
기초부터 차근차근, 직접 코드를 작성해 보세요.
programmers.co.kr
'코딩연습 > 프로그래머스' 카테고리의 다른 글
[SQL][프로그래머스] 동명 동물 수 찾기 (0) | 2021.01.20 |
---|---|
[SQL][프로그래머스] 고양이와 개는 몇 마리 있을까 (0) | 2021.01.20 |
[SQL][프로그래머스] 동물 수 구하기 (0) | 2021.01.19 |
[SQL][프로그래머스] 최솟값 구하기 (0) | 2021.01.19 |
[SQL][프로그래머스] 최댓값 구하기 (0) | 2021.01.19 |