SQL)Subquery, Join
*Subquery
-Subquery가 필요한 경우:
1.여러 번의 연산을 수행해야 할 때
2.조건문에 연산 결과를 사용해야 할 때
3.조건에 Query 결과를 사용하고 싶을 때
->즉 한 번에 긴~ 쿼리문을 사용하지 않고
간단한 쿼리문을 순번을 주어 차례로 이용할 수 있게 해준다!
- Subquery 문의 기본 구조
select column1, special_column
from
( /* subquery */
select column1, column2 special_column
from table1
) a
or
select column1, column2
from table1
where column1 = (select col1 from table2)
*Join
- 두 테이블 사이의 공통된 요소를 매개로 두 테이블을 합치는 것.
-종류:
1.Left join:
공통된 것 뿐만 아니라 A 전체를 가져온다.
2. Inner join:
공통된 것만 가져온다.
벤다이어그램으로 나타내면 아래와 같다.
-Join의 기본구조:
1. LEFT JOIN
select 조회 할 컬럼
from 테이블1 a left join 테이블2 b on a.공통컬럼명=b.공통컬럼명
이때 테이블1 의 별명을 a로, 테이블2의 별명을 b로 붙인 것.
별명은 자유롭게 가능!
2. INNER JOIN
select 조회 할 컬럼
from 테이블1 a inner join 테이블2 b on a.공통컬럼명=b.공통컬럼명
*Distinct ->중복제거의 기능!
select distinct NAME
from ANIMAL_IN
->NAME에서 중복되는 NAME을 제외하고 select한다.