SQL에서 Alias(별칭)은 컬럼이나 테이블에 임시 이름을 주는 용도로 사용한다.
컬럼이나 테이블 뒤에 한번 띄어쓰기를 한 후 적거나, 컬럼 뒤에 AS
를 붙인 뒤 적어주면 된다. Alias를 지정하면 컬럼/테이블명 대신 해당 별칭을 사용할 수 있다.
(FROM절에서서 테이블블 앨리어스를를 지정할떄는 AS를 사용하지 못한다.)
AS
를 생략하고 띄어쓰기만 해줘도 Alias를 지정할 수 있다.
컬럼을 지칭하는 방법
쿼리문에서 컬럼을 지칭하는 방법은 크게 세가지가 있다.
1. 컬럼의 소유주를 표기하지 않는 경우
장점
- 중복되는 컬럼을 분류하기 어렵다. 단점
- 어느 테이블의 컬럼인지 구분하기 힘들다.
- 만약 동일한 컬럼명을 갖은 테이블을 추가적으로 JOIN을 걸게 되는 경우 해당 컬럼의 소유주가 명확하지 않아 SQL문에서 오류가 발생할 수 있다.
2. 컬럼의 소유주를 테이블명으로 표기한 경우
장점
- 컬럼의 소유주를 명확하게 구분할 수 있다.
- 중복된 컬럼명을 갖는 테이블을 JOIN하여도 오류가 발생하지 않는다. 단점
- 테이블명이 길어지면 컬럼 하나를 사용할 때도 불필요하게 많은 타이핑을 해야한다.
- 컬럼은 그대로이고 테이블이 변경된 경우 (ex. 2020년 매출 테이블 → 2021년 매출 테이블로 변경) 각각의 테이블 명을 컬럼명에 연결된 소유주 명으로 변경해야한다.
3. 컬럼의 소유주에 대한 Alias를 표기한 경우
장점
- 컬럼의 소유주를 명확하게 구분할 수 있다.
- 중복된 컬럼명을 갖는 테이블을 JOIN하여도 오류가 발생하지 않는다.
- 컬럼은 그대로이고 테이블이 바뀌어야 하는 경우 Alias의 대상이 되는 테이블만 수정하면 되기 때문에 간편하다. 단점
- 복잡한 SQL문에 대해 각각의 alias까지 숙지해야 하는 번거로움이 있다. (별칭을 잘 지어야한다.)
- 별칭이 바뀌면 각각의 컬럼에 대해 붙은 별칭을 바꿔줘야 함
Alias를 사용하면 컬럼의 소유주를 구분하기 쉽고, 컬럼몀 중복을 걱정하지 않아도 되며 쿼리를 일부 수정하기도 쉬워진다.