SQL, 데이터분석 기본언어이지요.
이전 직장에서 데이터분석 작업을 위해, SQL 공부를 하게 되었고, 그 곳에서 일하던 데이터 엔지니어에게 많은 도움을 받아서, 기본적인 SQL 사용을 하게 되었네요.
SQL 은 엑셀이나 클라우드에 저장된 빅데이터를
- 전체 데이터를 정렬시키거나,
- 필요한 항목 기준으로 필터링하거나,
- 엑셀 <-> 클라우드 테이블로 업로드 or 다운로드 하거나,
- 몇개의 클라우드 테이블를 조합해서 필요한 항목 기준으로 필터링 하는 기능을 주로 수행합니다.
SQL syntax 공부는 대략 2-3개월 정도 소요되는데, 필터링 문법은 배우기 쉽지만,클라우드 테이블로 업로드 or 다운로드는 수차례 연습이 필요했습니다.
SQL 고급활용 수준으로는,
- 테이블 조합을 하는 Join 명령문을 활용하거나,
- 필터링에서 철자의 대소문자 및 특정단어 를 기준으로 설정하는 것이 가장 복잡한 단계로 보입니다.
이후, SQL 문법으로 할 수 있는 것이 한계가 있기 때문에, 그 이상의 데이터분석은 Python 영역으로 넘어가는 것인데, 기본적인 빅데이터 테이블 정리까지가 SQL 영역으로 이해하면 될 듯 합니다.
아래 SQL 구문이 제가 작성한 SQL 구문 샘플입니다.
select *
from `gcp.table.A`
where email in
(select distinct SS.email
from
(select distinct email
from `excel.data.A`
) A,
(select distinct email
from `gcp.table.A`
where SUBSTR(model, 1, if( STRPOS(model, ".") > 0, STRPOS(model, ".") - 1, length(model)))
in (select distinct model FROM `gcp.table.B`)
) B,
where B.Email = SS.email
)
order by account
300x250