데이터베이스로 작업할 때 특정 데이터 세트의 모든 고유 값을 가져오려는 경우가 있습니다. 예를 들어, 과거에 판매한 제품의 이름 목록을 가져오거나 영화 데이터베이스에 있는 다양한 영화 범주 목록을 가져올 수 있습니다.
SQL
이 정보를 검색하는 데 도움이 되는 내장 함수가 있습니다. DISTINCT
. DISTINCT
연산자를 사용하면 데이터 세트에서 고유한 값 조합을 모두 검색할 수 있도록 중복 레코드를 제거할 수 있습니다.
이 튜토리얼에서는 DISTINCT
SQL
에서 , 그리고 언제 이 연산자를 사용할 수 있습니다.
SQL 쿼리 리프레셔
데이터베이스에서 정보를 검색하려면 쿼리를 작성해야 합니다. SQL
쿼리는 거의 항상 SELECT
로 시작합니다. 명령문을 사용하고 데이터베이스에서 검색하려는 정보를 지정합니다. 다음은 SQL
의 기본 구문입니다. 쿼리:
SELECT column_name FROM table_name WHERE your_query_conditions;
실제 쿼리를 설명하기 위해 예를 사용하겠습니다. 다음 쿼리는 우리 회사에서 일하는 모든 직원의 이름과 직위를 반환합니다.
SELECT name, title FROM employees;
코드 반환:
이름 | 제목 |
루크 | 영업 사원 |
마이크 | 영업 사원 |
한나 | 영업 사원 |
제프 | 시니어 영업 직원 |
알렉시스 | 영업 사원 |
요나 | 영업 부사장 |
엠마 | 마케팅 이사 |
여러 열을 검색하려면 위에서 했던 것처럼 열 이름을 쉼표로 구분하여 검색할 수 있습니다. 또는 모든 열에서 정보를 얻으려면 별표(*
), 이는 테이블의 모든 열을 나타냅니다.
쿼리를 작성할 때 WHERE
를 사용할 수 있습니다. 특정 조건 집합을 충족하는 레코드를 필터링합니다. 예를 들어, 우리 비즈니스에서 일하는 모든 영업 직원을 얻으려면 다음 쿼리를 사용할 수 있습니다.
참가자의 81%는 부트캠프에 참석한 후 기술 직업 전망에 대해 더 자신감을 느꼈다고 말했습니다. 지금 부트캠프에 참여하십시오.
부트캠프 졸업생은 부트캠프 시작부터 첫 직장을 찾는 데까지 6개월도 채 걸리지 않았습니다.
SELECT name, title FROM employees WHERE title = 'Sales Associate':
쿼리는 다음을 반환합니다.
이름 | 제목 |
루크 | 영업 사원 |
마이크 | 영업 사원 |
한나 | 영업 사원 |
알렉시스 | 영업 사원 |
(4줄)
이제 쿼리의 기본 사항을 알았으므로 DISTINCT
를 사용하는 방법을 탐색할 수 있습니다. SQL
에서 .
SQL 고유
데이터베이스에서 데이터를 수집할 때 결과에 중복 행이나 값이 포함될 수 있습니다. 직원이 보유한 모든 직함의 목록을 얻고 싶다고 가정해 보겠습니다. 표준 SELECT
를 사용한다면 쿼리를 수행하면 중복 값이 표시됩니다. 다음은 예입니다:
SELECT title FROM employees;
쿼리는 다음 결과를 반환합니다.
제목 |
영업 사원 판매 사원 판매 사원 수석 영업 사원 판매 사원 영업 부사장 마케팅 이사 |
(7줄)
보시다시피 Sales Associate
라는 제목은 해당 직위를 보유한 직원이 4명이므로 가 네 번 나타납니다. 그러나 얼마나 많은 사람들이 해당 타이틀을 가지고 있는지가 아니라 데이터베이스에 어떤 타이틀이 있는지 알고 싶다면 어떻게 해야 할까요?
바로 SQL DISTINCT
입니다. 연산자가 들어옵니다. SQL DISTINCT
를 사용하여 절을 사용하면 쿼리에서 모든 중복 데이터를 제거할 수 있습니다.
DISTINCT
키워드는 SELECT
와 함께 사용됩니다. 운영자. 다음은 위의 동일한 쿼리를 실행하는 예입니다. 그러나 DISTINCT
교환원 존재:
SELECT DISTINCT title FROM employees;
쿼리는 다음을 반환합니다.
제목 |
영업 부사장 판매 사원 수석 영업 사원 마케팅 이사 |
(4줄)
쿼리는 직원이 보유한 모든 직함 목록을 반환했습니다. 그러나 한 명 이상의 직원이 보유한 직함은 반복하지 않았습니다. 출력에 중복 값이 없습니다.
DISTINCT
연산자는 대규모 데이터 세트로 작업할 때 특히 유용합니다. 위의 예에서는 직원이 7명뿐이지만 직원이 500명이라면 DISTINCT
를 사용하지 않고 사람들이 어떤 직함을 가지고 있는지 확인하기 어려울 것입니다. 연산자.
결론
이제 DISTINCT
를 사용하는 방법을 알게 되었습니다. SQL
의 연산자 서버.
논의한 바와 같이 SQL SELECT DISTINCT
테이블에서 데이터를 가져오고 결과에서 중복 행이나 값을 제거할 수 있습니다. 예를 들어, 회사의 모든 지점 목록을 원하면 DISTINCT
를 사용할 수 있습니다. 목록을 생성합니다. DISTINCT
중복으로 인해 주의가 산만해질 수 있는 더 큰 데이터 세트로 작업할 때 특히 유용합니다.