본문 바로가기

STUDY

패스트캠퍼스 데이터분석 부트캠프 학습일지4

https://fastcampus.co.kr/

 

패스트캠퍼스 [직장인 실무교육]

프로그래밍, 영상편집, UX/UI, 마케팅, 데이터 분석, 엑셀강의, The RED, 국비지원, 기업교육, 서비스 제공.

fastcampus.co.kr

 

4주차: SQL+파이썬

(SQL 기본 이론도 저번주에 거의 다 했고, 파이썬 부분은 진짜 다 아는 거라.. 대부분 생략. 다른 주들에 비해 분량이 적습니다.)

 

CROSS JOIN: 각 테이블 간 조합할 수 있는 모든 경우를 출력하는 방식

- SELECT 컬럼명 FROM 테이블A CROSS JOIN 테이블 B;

- 결과 데이터가 매우 뻥튀기 될 수 있으니 주의하기: 조합 가능한 모든 경우의 수가 나옴:: WHERE절에 INNER JOIN의 ON처럼 컬럼을 설정해주면 (WHERE c.CustomerID = o.CustomerID같은 식) 이너조인처럼 교집합으로 사용 가능

SELF JOIN: 자기 자신과 JOIN하는 방식

- SELECT 컬럼명 FROM 테이블 alias1 테이블 alias2 WHERE 컬럼명;

- 한 테이블 내에서 계층구조를 이루는 데이터가 존재하는 경우, 상위~하위 데이터가 하나의 테이블에 있고 이를 같이 보여주고 싶은 경우 사용

 

서브쿼리: 하나의 쿼리 안에 존재하는 또 다른 쿼리.

- SELECT절: 스칼라Scalar 서브쿼리:: 주로 SELECT절에 위치하긴 하나 컬럼이 올 수 있는 대부분의 위치에 사용 가능. 하나의 값만 리턴해야 함(두 컬럼을 가져오려면 서브쿼리 두 개가 필요한 격)

- FROM절: 인라인 뷰Inline View

    - 뷰: 특정 SELECT문에 이름을 붙여 재사용이 가능하도록 저장해놓은 오브젝트. 가상 테이블로 실제 데이터를 저장하지는 않

- WHERE절, HAVING절: 중첩Nested 서브쿼리

    - 비연관 서브쿼리: 메인 쿼리와 관계를 맺고있지 않음

    - 연관 서브쿼리: 메인 쿼리와 관계를 맺고 있음

    - EXISTS: 서브쿼리에 해당하는 데이터가 있는지 확인하는 구문. 하나 이상의 레코드가 존재하는 경우 TRUE

    - SELECT 컬럼명 FROM 테이블명 WHERE EXISTS (확인할 것):: EXISTS문과 바깥을 연결하는 조건(ON) 필요

    - SELECT 1: 특정 컬럼(값)의 유무만 확인하겠다는 뜻. 주로 EXISTS문 안에서 사용됨

 

UNION & UNION ALL: 세로로 붙이는 형태. Dtype과 갯수가 같아야 함

- JOIN은 가로로 붙이는 것이므로 상관 없음!

- UNION은 합집합, UNION ALL은 그대로 붙이는 형태(중복 데이터가 있을 경우 중복이 그대로 표현됨)

 

WITH ROLL UP: 그룹별 집계 반환

- SELECT 컬럼명 FROM 테이블명 WHERE 컬럼명 GROUP BY 컬럼명 WITH ROLL UP;

- 그룹바이와 같아보이나 맨 마지막 로우에 (그룹바이 단위의)총 합계가 있음. 데이터분석 시 유용.

 

PIVOT: 데이터의 행과 열을 90도 회전하는 것

- SELECT EXTRACT(꺼낼 것 FROM 날짜(컬럼)) alias1 FROM 테이블명 GROUP BY EXTRACT(꺼낼 것 FROM alias1) 

 

윈도우 함수: 순위함수(RANK, DENSE_RANK, RANK_NUMBER)같은 것들. 어려운 개념이라 추후 공부 필요

 

DML: Data Manipulatio Language, 데이터를 입력하고 입력된 데이터를 수정 / 삭제 / 조회하는 명령어

- INSERT, UPDATE, DELETE

    - INSERT INTO 테이블명 VALUES (컬럼에 입력될 데이터 리스트);

    - UPDATE 테이블명 SET 컬럼명 = 새 데이터 (WHERE 수정조건);

    - DELETE FROM 테이블명 (WHERE 삭제조건);

TCL: Transaction Control Language, 트랜잭션을 제어하는 명령어

- COMMIT, ROLLBACK, SAVEPOINT

- DML 뒤 커밋 / 되돌리고 싶을 때 롤백하는 식으로 사용

DDL: Data Definition Language, 데이터를 정의하는 명령어

- CREATE, ALTER, DROP

    - ALTER는 ADD, DROP, MODIFY COLUMN등으로 데이터를 변경할 수 있음

'STUDY' 카테고리의 다른 글

패스트캠퍼스 데이터분석 부트캠프 학습일지5  (0) 2023.03.24
취준로그 ver0.9  (1) 2023.03.17
취준로그 ver0.8  (3) 2023.03.10
패스트캠퍼스 데이터분석 부트캠프 학습일지3  (4) 2023.03.10
취준로그 ver0.7  (1) 2023.03.03