쿼리가 점점 길어지면 헷갈리는 일이 자주 발생한다. 그래서 SQL은 Alias라는 별칭 기능을 지원한다.
select *
from orders
where course_title = '앱개발 종합반'
orders 테이블에서 '앱개발 종합반'만 보고 싶어서 where절을 이용하여 확인해보았다.
여기서 쿼리가 길어지게 되면 이 course_title이 어느 테이블의 필드인거지? 라는 의문과 동시에 헷갈릴 수 있다.
그럴 경우 다음과 같이 별칭을 정해줄 수 있다.
select *
from orders o
where o.course_title = '앱개발 종합반'
from orders 옆에 띄워쓰기 후 o라는 별칭을 입력했다.
"그러면 앞으로 orders를 o라고도 부르겠다" 라는 말이 된다.
그리고 아래 where절에는 o.course_title이라고 적어줘서 어느 테이블의 course_title인지 구분이 쉽게 작성할 수 있다.
이 별칭은 어느 알파벳으로도 가능하지만(예를들어 a나 ab등도 가능하다), 보통 알파벳 한 글자 아니면 두 글자로 굉장히 짧게 쓴다. 물론 별칭을 정할 때 해당 테이블이 연상될 수 있도록 정해주는게 좋다.
조금 더 구체적으로 쿼리를 지시내릴 수 있는 것이다.
여기서 또 다른 별칭을 줄 수 있다.
만약 payment_method로 묶어주고 payment_method당 카운터가 몇 개인지 보기로 결정했다.
select payment_method, count(*)
from orders o
where o.course_title = '앱개발 종합반'
group by payment_method
해당 그림처럼 결과가 나오는데, count(*)이라는 이름으로 결과가 나온다. 이를 보기가 안 좋으면 'as'를 사용하여 별칭을 정할 수 있다.
as를 활용하여 cnt라는 별칭을 사용한다면, 다음과 같다.
select payment_method, count(*) as cnt
from orders o
where o.course_title = '앱개발 종합반'
group by payment_method
'SQL' 카테고리의 다른 글
Join을 왜 배우고 왜 써야하는가? (0) | 2022.05.22 |
---|---|
별칭을 사용하여 group by, order by, where 연습해보기 (0) | 2022.05.22 |
Group by, Order by 연습해보기 (0) | 2022.05.11 |
Order by 문자열은 정렬이 되는가? (0) | 2022.05.11 |
group by 사용할 때 자주 하는 실수 (0) | 2022.05.05 |