Alias(별칭)는 SQL 쿼리에서 컬럼 또는 테이블에 임시 이름을 부여하는 기능입니다. 가독성을 높이고 복잡한 쿼리를 간결하게 만드는 데 사용됩니다. SQLD 시험에서는 Alias의 문법과 사용 범위가 자주 출제됩니다.
컬럼명 [AS] 별칭AS 키워드는 선택 사항이며, 생략해도 됩니다.SELECT user_id AS 회원번호, user_name 이름 FROM Users;테이블명 [AS] 별칭AS를 생략하고 사용합니다.AS 사용 시 오류가 발생하므로, AS 없이 사용하는 것이 SQLD 시험의 핵심 포인트입니다.FROM Users u JOIN Orders o ON u.id = o.user_id;")**로 묶어야 합니다.')는 문자열 상수로 취급되므로 별칭으로 사용할 수 없습니다.SELECT user_id AS "회원 번호" FROM Users;Alias는 쿼리 실행 순서 때문에 모든 절에서 사용할 수 있는 것은 아닙니다.
WHERE 절: 사용 불가FROM 절이 실행되어 테이블이 확정된 후 WHERE 절이 실행되지만, SELECT 절의 별칭은 아직 생성되지 않았기 때문입니다.ORDER BY 절: 사용 가능SELECT 절이 먼저 실행된 후 ORDER BY 절이 실행되므로, 별칭을 인식할 수 있습니다.SELECT salary AS 급여 FROM Employees
WHERE 급여 > 3000; -- ❌ (오류 발생)
ORDER BY 급여; -- ✅ (정상 작동)| 구분 | 문법 | AS 키워드 | 시험 핵심 포인트 |
|---|---|---|---|
| 컬럼 Alias | 컬럼명 AS 별칭 | 사용 가능/생략 가능 | WHERE 절 사용 불가 |
| 테이블 Alias | 테이블명 별칭 | Oracle에서는 AS 생략 필수 | FROM 절에서만 지정 |
| 따옴표 | "별칭" | 공백, 대소문자 포함 시 필수 | '별칭' (홑따옴표)는 오류 |
1. 다음 중 올바른 Alias 사용 예시는?
A. SELECT name = 이름 FROM Users;
B. SELECT name AS 이름 FROM Users;
C. SELECT name 이름 FROM Users;
D. SELECT name '이름' FROM Users;
2. 다음 SQL 실행 결과에 대한 설명으로 옳은 것은? (Oracle 기준)
SELECT salary AS 급여 FROM Employees WHERE 급여 > 3000;
A. 정상 실행되며, 급여가 3000을 초과하는 행을 출력한다.
B. 급여 별칭은 WHERE 절에서 사용 가능하므로 문제없다.
C. WHERE 절에서 Alias를 사용했으므로 오류가 발생한다.
D. 급여 컬럼이 실제로 급여로 변경된다.
3. 다음 중 테이블 Alias 사용에 대한 설명으로 옳은 것은? (Oracle 기준)
A. FROM Users AS u는 정상 실행된다.
B. 테이블 Alias는 WHERE 절에서만 지정할 수 있다.
C. 테이블 Alias는 반드시 AS를 붙여야 한다.
D. FROM Users u는 Oracle에서 정상 실행된다.
4. 다음 SQL 실행 결과에 대한 설명으로 옳은 것은?
SELECT user_id AS "User ID" FROM Users;
A. 출력 컬럼명이 USER ID (대문자, 공백 없음)으로 표시된다.
B. 출력 컬럼명이 User ID 그대로 표시된다.
C. "User ID"는 문자열로 인식되어 오류가 발생한다.
D. "User ID"는 실제 테이블 컬럼명으로 반영된다.
AS를 사용한 올바른 문법이고, C는 AS를 생략한 올바른 문법입니다. D는 홑따옴표를 사용해 문자열로 인식되므로 오류가 발생합니다.WHERE 절은 SELECT 절보다 먼저 실행됩니다. 따라서 급여라는 Alias를 인식할 수 없어 오류가 발생합니다.AS 키워드를 사용할 수 없으며, 테이블명 별칭의 형태로만 가능합니다.")로 묶은 별칭은 공백과 대소문자를 그대로 유지한 채 출력 컬럼명으로 표시됩니다.