삽질의 현장/- DataBase

[삽잡이::sql] 중복을 제거하라! DISTINCT

shovelman 2016. 6. 28. 21:38


삽잡이는 중복된 데이터를 지우고 

컬럼에 원하는 값들이 존재한지 

알아볼 필요성이 생겼었습니다.


아래와 같은 Table에 

blood_type이라는 컬럼이 있다고 가정해보겠습니다.



삽잡이는 A, B, AB, O 혈액형 모두가 

해당 Table에 있는지 확인하고 싶어합니다.





오오~~ 알려줘~ 알려줘~ 


이럴땐 어떻게 해야할까요???



바로! DISTINCT 라는 키워드를 사용할 수 있습니다.




뚜렷한이라는 뜻을 가지고 있습니다.


네~ 그렇습니다. 


DISTINCT 키워드를 통해

SELECT 문의 결과에서

중복을 제거한 데이터를 뽑아낼 수 있습니다.


 

1
SELECT DISTINCT blood_type FROM personal_records;
cs


비록 간단한 예시지만,

이와 같이 DISTINCT 키워드를 사용하여 

중복되지 않은 결과를 확인할 수 있습니다.


한번 써먹기 아쉬우니 다시 출동!!!


 


짜잔~


예... Table에서는 

B형 2개, A형 2개, AB형 1개, O형 1개의 

개수를 가지고 있습니다.


하지만, DISTINCT 을 사용하여 

A, B, AB, O 라는 중복되지 않은 각각의 값들을 추출 할 수 있게 됩니다.



이와 비슷한 기능으로 예전에 소개드린 적이 있는데

혹시 기억나시는 분!?


저요! 저요!  



삽잡이가 아닌 삽순이...


예 그렇습니다.

바로 ORDER BY 라는 키워드였습니다.


(참고_ ORDER BY)


ORDER BY 키워드는 조건절 이후에 나왔습니다.


ORDER BY 키워드는 그룹핑, 정렬된 결과라는 성격을 지닌 반면

DISTINCT 키워드는 중복된 값을 하나씩만 보여준다는 성격을 가지고 있습니다.


둘은 비슷하면서도 약간의 성격은 다른데 말입니다.

GROUP BY 키워드는 

하나의 그룹으로 만든다! 

라고 이해하시면 편할 것 같네요.


둘 다 고만고만 합니다.

(개인적인 생각입니다...)


하하... 둘이 같이 쓸 수도 있어요...


즐겁게 코딩합시다~


굳~