꿈은 데이터분석가, 취미는 계획

[MY SQL] 기본준비: 스키마 만들기, 테이블 만들기, 데이터 추가하기 본문

SQL/SQL 활용하기

[MY SQL] 기본준비: 스키마 만들기, 테이블 만들기, 데이터 추가하기

data_2080 2024. 7. 22. 19:22
728x90

이커머스 분석 프로젝트를 파이썬으로 진행하고 있었는데 데이터분석가에게는SQL이 더 중요하다고 생각!
그래서 전처리한 데이터프레임을 csv로 저장해서 SQL에서 불러오는 작업을 진행했다!

CSV파일을 불러오는 방법이 궁금하다면 1번 스키마 생성 후 바로 4번을 진행해주세요!

1. 스키마 만들기 

스키마를 만드는 건 간단하다! 쿼리를 실행하고 좌측에서 SCHEMAS옆에 새로고침 버튼을 누르면
설정한 이름의 새로운 데이터베이스(=스키마)가 뜨면 성공!

CREATE DATABASE ecommerce_pjt;

2. 테이블 만들기

테이블은 틀을 만드는 과정이다.
csv파일의 컬럼들의 이름과 데이터타입을 지정해서 테이블의 구성을 만들어준다.

나의 데이터는 event_day(일자별)의 이벤트 횟수와 매출 등의 정보라서 PRIMARY KEY를 event_day라고 지정했다.

*PRIMARY KEY는 중복없이 고유한 값을 가져야 하고 NULL값이 없어야 함!

 

대부분의 데이터는 횟수로 INT로 지정하고 매출의 경우 소수점 단위로 나와서 DECIMAL을 사용했다.
*DECIMAL은 고정 소수점으로 첫번째 자리에 전체 자릿수를 두번째 자리에 소수점이하 자릿수를 나타냄

CREATE TABLE user_metric (
    event_day DATE PRIMARY KEY,
    top_view INT,
    ...
    top_sales DECIMAL(10,2);

3. 데이터 추가하기

테이블에 데이터를 추가할 때는 삽입할 테이블명, 컬럼, 값을 입력하면 추가된다
*다른 데이터베이스를 클릭해둔 상태라면 USE 데이터베이스명을 해주거나 해당 스키마를 더블 클릭해줘야 함!

 

추가한 후에 SELECT * FROM 테이블명 조회했을 때 나오면 성공!

 

USE ecommerce_pjt;

INSERT INTO user_metric (event_day, top_view, ..., total_sales) 
VALUES ('2019-10-01', 13024,, ...,43497.17);

4. CSV 데이터 불러오기

저처럼 csv파일이 있는 경우 스키마 생성 후 바로 CSV파일에서 데이터를 가져오면 됩니다.

1) 테이블을 만들 스키마 우클릭 - Table Data Import Wizard클릭 


2) csv가 있는 파일위치 선택 

3) 새로운 테이블생성, 스키마 확인 후 원하는 테이블명으로 변경 

4) 컬럼별로 데이터 타입 체크(데이터 타입이 잘못 매칭되어 있는 경우 클릭해서 변경) 

5) 오류해결

4단계 완료 후 0개의 records라고 뜨는 문제가 발생!
불러오려는 파일을 메모장으로 열고 '다른이름으로 저장'을 하고
이때 파일형식을 '모든파일'로 변경하고 인코딩을 'UTF-8'로 변경

 

그 뒤에 다시 1번부터 진행했더니 모두 불러와짐!
간혹 레코드가 누락되는 경우도 있으니 원본df의 레코드 수와 일치하는지 확인할 것!!!

728x90