이름이 긴 필드 이름이나, 긴 릴레이션 이름을 Query 문 내에서 다시 이름을 짓기 위해서 사용합니다.
즉, SQL 에서 AS 키워드는 테이블이나 컬럼에 별칭(alias) 을 설정하는데 사용합니다.
이 별칭은 쿼리가 실행되는 동안 임시로 사용되며, 실제 데이터베이스에 저장되거나 영구적으로 적용되지 않습니다.
예시
SELECT student_name, student_gender FROM students;
SELECT student_name AS 학생_이름, student_gender AS 성별 FROM students;
위에서 보는 것처럼 AS 키워드를 사용하면 결과 테이블의 필드명을 알아보기 쉽게 바꿀 수 있습니다.
단순해 보이는 AS 키워드는 상당히 많이 사용됩니다.
SQL 의 필드명에는 공백문자를 사용할 수 없으므로, 'AS 학생 이름' 처럼 띄어쓰기를 사용할 수 없다.
AS 키워드는 단순히 필드명을 바꾸는 것에 그치지 않고, 테이블의 이름을 바꾸는 데에도 사용할 수 있습니다.
테이블의 이름이 너무 길다면, 좀 더 쉽고 간단한 이름으로 바꿔서 사용할 수도 있습니다. 테이블의 이름을 바꾸기 위해서는 FROM 키워드 뒤에 AS 를 붙여 사용하면 됩니다.
즉, AS 키워드가 FROM 앞에 있는 경우와 FROM 뒤에 있는 경우는 그 의미가 다르므로 주의해야 합니다.
SELECT st.student_name, st.school_name from students as st;
이처럼 간소화된 테이블 이름을 사용할 때에는 '테이블명,필드명' 형태로 사용하면 됩니다.
이때 테이블명과 필드명 사이에 사용된 마침표(.) 를 닷 연산자 라고 합니다.
만약 MyBatis Mapper 에서 해당 AS 를 사용하여 특정 데이터를 가져오고 싶을 때 어떻게 해야 할까요?
아래처럼 SQL 쿼리를 작성하여 MyBatis Mapper 와 연결하시면 됩니다.
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="StudentMapper">
<!-- 학생 점수 계산 쿼리 -->
<select id="getStudentScores" resultType="Student">
SELECT
name,
ROUND(math_score + science_score, 1) AS totalScore
FROM students;
</select>
</mapper>
'SQL' 카테고리의 다른 글
SQL Developer 으로 Tablespace 생성 (1) | 2024.12.09 |
---|---|
변환함수 - TO_CHAR, TO_DATE, TO_NUMBER (0) | 2024.12.09 |
문자열 함수, 숫자형 함수 (0) | 2024.12.05 |
연산자 (0) | 2024.12.04 |
DDL, DML, DCL, TCL (0) | 2024.12.04 |