코딩테스트/SQL 코딩테스트

<프로그래머스> 중복 제거하기

배또가또 2023. 12. 7. 17:18

출처 : https://school.programmers.co.kr/learn/courses/30/lessons/59408

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

SQL 문제

 

  • 문제 요구사항
    • 보호소에 들어온 동물의 이름의 수를 조회
    • NULL값은 포함하지 않음
    • 중복된 이름의 수는 세지 않음

 

집계함수인 COUNT()를 사용함

중복을 허용하지 않아야하기 때문에 유일값만을 출력하여 중복을 제거하는 DISTINCT를 사용함

COUNT(DISTINCT NAME) 이렇게 작성하면 NULL값은 애초에 조회되지 않음

COUNT(*)하면 NULL값의 개수도 셈


1) Oracle

SELECT COUNT(DISTINCT NAME) AS "count"
FROM ANIMAL_INS;

2) MySQL

Oracle 코드와 동일

SELECT COUNT(DISTINCT NAME) AS "count"
FROM ANIMAL_INS;