[1기] K-Digital Training: 데이터 분석 데브코스 - TIL_Day22

정연우·2023년 12월 20일
0

주요 메모 사항 소개

SQL_Analysis_Day 2-1

관계형 데이터베이스 예제 - 웹서비스 사용자/세션 정보

사용자ID

세션ID

세션이 생성된 시간

채널정보

세션을 여러개 가질 수 있는 이유:

접근 수가 많다고 매출이 늘어나는 것은 아니기 때문에 마케팅에서 접근 수뿐만 아니라 매출도 봐야한다.

여러 채널을 방문해서 상품을 구매했을 때 기여도가 가장 큰 채널 구하는 방법

  • 첫번째 채널에 기여도를 많이 부여한다. (first channel attribution)
  • 마지막 채널에 기여도를 많이 부여한다. (last channel attribution)
  • 채널 전체에 기여도를 동등히 부여한다. (multy channel)

SQL 기본

팀프로젝트에서 테이블/필드의 명명규칙을 명확히 정해야한다. 그래야 불필요한 테이블이 늘어나지 않는다.


SQL DDL - 테이블 구조 정의 언어

postgresql 사용

CREATE TABLE

primary key는 중복되는 값이 없어야한다.

데이터 웨어하우스에는 primary key를 보장하지 않는다. 데이터가 워낙 많아 확인하기 어렵기 때문이다. (지정은 할 수 있다. → 참고로만 사용) = Primary key uniqueness를 보장하지 않는다.

CTAS: 테이블을 만들면서 바로 테이블에 내용을 추가한다. (CREATE TABLE 스키마.테이블 AS SELECT …)

DROP TABLE vs DELETE FROM

DROP TABLE: 테이블 자체를 삭제

DELETE FROM: 테이블의 레코드를 삭제 (WHERE 절을 통해 특정 레코드만 삭제 가능)


SQL DML - 테이블 데이터 조작 언어

INSERT INTO vs COPY

INSERT INTO: BULK INSERT가 불가능하다.

COPY: BULK INSERT가 가능하다.

DELETE FROM vs TRUNCATE

DELETE FROM: Transaction을 사용할 수 있다

TRUNCATE: Transaction을 사용할 수 없다


SQL_Analysis_Day 2-2

실습에 들어가기에 앞서 기억할 점

데이터를 분석하기 전에 데이터를 살펴봐야한다.

모든 테이블을 다 관리할 수 없기 때문에 데이터팀은 중요한 테이블을 골라 이해하고 잘 관리해야한다.

0개의 댓글