만족

[MYSQL] 셀렉트(SELECT) - 2 본문

[MYSQL] 셀렉트(SELECT) - 2

DataBase/mysql Satisfaction 2021. 4. 26. 03:31

이번에는 열 이름 위치에 추가적으로 사용할 수 있는

DISTINCT와 ALIAS에 대해 알아보겠다.

 

DISTINCT

 

해당 열의 중복을 제거하는 방법이다.

 

가령 학교 학생의 과 정보를 저장하는 major 테이블이 아래와 같다고 해보자

 

student_id major_name
1234 컴퓨터공학
1234 화학공학
9999 기계공학
8888 전자공학

이 테이블에서 학번 리스트를 중복 없이 뽑고 싶다면

SELECT student_id FROM major;

가 아닌

SELECT DISTINCT student_id FROM major;

를 사용해 중복되는 student_id(1234)를 한 번만 표시할 수 있다.

 

ALIAS

열 이름이 지저분하다거나,

테이블 형태를 바꿀 수 없는데 열 이름이 부적절한 상황,

두 개 이상의 테이블에 대해 SELECT를 할 때 열 이름이 겹치는 상황에 사용할 수 있다.

 

말 그대로 행 이름을 그대로 쓰지 않고, 별칭을 붙여 사용하는 방법이다.

 

SELECT DISTINCT student_id AS 학번 FROM major;

 

열 이름 뒤에 "AS 별칭"을 추가하여 student_id를 학번 컬럼으로 변경한다.

(AS 키워드는 생략 가능하나, 개인적으로 있어야 읽기 편하다)

학번
1234
9999
8888

열 이름 뿐만 아니라, 테이블에도 별칭을 사용할 수도 있다.

 

SELECT DISTINCT m.student_id AS 학번 FROM major AS m;

m.student_id는 테이블 m에 속한 student_id 열을 의미한다.

 

지금은 크게 쓸 데가 없지만, 2개 이상의 테이블에 대해 동시에 SELECT 할 때는 유용하다.

'DataBase > mysql' 카테고리의 다른 글

[MYSQL] 조인(JOIN)  (0) 2021.04.26
[MYSQL] Aggregtion(집계)과 GROUP(그룹)  (0) 2021.04.26
[MYSQL] 셀렉트(SELECT) - 1  (0) 2021.04.26
[MYSQL] SQL CREATE/DROP/ALTER  (0) 2021.04.25
[MYSQL] RANK/DENSE_RANK/ROW_NUMBER 함수  (0) 2021.03.03


Comments