<빅데이터 처리를 위한 툴의 기능별 구조도>

- Language: SQL, Python
- DB Tool: Dbeaver, Google Bigquery, MySQL Workbench
- Data Analysis Tool: Jupyter Notebook
- Data Visualization Tool: Tableau, Jupyter Notebook
DB에 접근하기 위한 가장 범용적인 질의어(Query)가 SQL!
채용 시, SQL 문제를 코딩테스트에서 제출하고 있다.
데이터 Data: 정보
데이터베이스 DB: 저장된 데이터의 모음. 데이터가 수집되는 곳 = 서버(PC)
DBMS: 데이터베이스를 관리하기 위한 소프트웨어 시스템.(ex. MySQL)
쿼리Query: 데이터베이스에 접근하기 위한 질문이자 요청. SQL은 관계형 데이터베이스 관리 시스템(DBMS)에서 데이터를 관리, 처리하기 위한 표준화 언어이다.
작동순서
FROM → ON → JOIN → WHERE → GROUP BY → HAVING → SELECT → DISTINCT → ORDER BY
가장 먼저 데이터를 가져올 테이블을 지정하고 (FROM)
JOIN 조건을 확인하고 (ON, JOIN)
JOIN을 한 뒤에 추출할 행 필터링 조건을 지정한다 (WHERE)
그 후, 데이터를 그룹화하고 (GROUP BY)
원하는 데이터를 추출하고 (SELECT)
추출된 데이터 중에서 중복된 값을 제거하고 (DISTINCT)
최종적으로 데이터를 정렬한다 (ORDER BY)
SELECT → FROM(JOIN, ON) → WHERE → GROUP BY → HAVING → ORDER BY
WHERE는 GROUP BY보다 앞에 나와야 함
HAVING은 그룹화된 데이터에 조건을 걸 때 사용되기 때문에 GROUP BY 작성 후에 작성해준다!
ORDER BY는 최종적으로 가장 마지막에 정렬해주는 역할이기 때문에 가장 마지막 줄에 작성