728x90
SQL로 시작하는 데이터 분석
SQL (Structered Query Language)
- 뛰어난 연산 처리 능력을 갖춘, 널리 사용되고 필요에 따라 유연하게 사용 가능한 데이터 분석 도구
- 장점
- 많은 데이터가 이미 데이터베이스에 저장되어 있다.
- 데이터를 스프레드시트에 저장하기보다 DB에 로드하는 편이 저장/연산 측명에서 좋다.
- 많은 데이터가 이미 데이터베이스에 저장되어 있다.
- 단점
- DB에 저장되어야 사용 가능
SQL 문법 종류
- DDL (Data Definition Language)
- 데이터베이스에서 테이블, 뷰, 사용자 및 기타 오브젝트를 생성하고 수정하는 데 사용
- 구조를 생성/수정
- CREATE, ALTER, DROP
- DCL (Data Control Language)
- 접근 제어에 사용
- GRANT, REVOKE : 권한을 주거나 취소할 때 사용
- DML (Data Manipulation Language)
- 데이터 자체를 다르는데 사용
- INSERT, UPDATE, DELETE
SQL vs R, Python
코드가 실행되는 장소 / 요구되는 컴퓨터 성능 | 데이터 저장/구성 방식 | 반복 유무 | |
SQL | - DB 서버에서 실행 - 대용량 데이터로 분석할 때 DB 서버에서 실행하는 것이 좋다. - 새로운 데이터 업데이트 할 때 좋다. |
- 모든 데이터가 구조에 맞게 저장 | - 반복을 위한 코드가 따로 없어 내부적으로 데이터셋 반복 |
R, Python | - 주로 로컬에서 실행 | - 다양한 방법으로 데이터 저장 - 데이터 프레임 사용 |
- for문 |
- 서로 보완 가능
- SQL, R, Python 결정 고려 사항
- 데이터가 어디에 저장되어 있는가?
- 데이터 용량?
- 데이터를 어디에 사용할 것인가? (보고서, 시각화, 통계 분석)
- 데이터가 새로운 값으로 변경되거나 최신화될 필요가 있는가?
- 팀 혹은 조직에서 어떤 도구를 사용하며, 그 규정을 따른느 것이 얼마나 중요한가?
728x90
반응형
'TIL - 프로그래밍 > SQL' 카테고리의 다른 글
[리트코드] 627. Swap Salary - MySQL (0) | 2023.07.05 |
---|---|
[SQL] DML 공부 (0) | 2023.07.05 |
[프로그래머스] 상품을 구매한 회원 비율 구하기 - MySQL (0) | 2023.03.02 |
[프로그래머스] 자동차 대여 기록 별 대여 금액 구하기 - MySQL (0) | 2023.02.28 |
[230228] MySQL 조건문 (IF문 / 중첩 IF문 / CASE문) (0) | 2023.02.28 |
댓글