본문 바로가기

SQL

[SQL] 메타코드M '데이터분석가 입문 필수 SQL 부트캠프' 강의 후기 #1 - SQL 설치, SELECT문 등

728x90
반응형

 

  2024년 SQLD 첫 시험이 3월 9일에 있을 예정이다. SQLD 시험에 앞서 메타코드M의 '데이터분석가 입문 필수 SQL 부트캠프' 강의를 들으며 이론을 배우고 어떻게 실무에 적용되는지 학습할 것이다. SQL을 처음 배우는 것이 아니기에 1.5배속으로 영상을 보며 실습 위주로 진행하였다. 

 

메타코드M

빅데이터 , AI 강의 플랫폼 & IT 현직자 모임 플랫폼ㅣ메타코드 커뮤니티 일원이 되시기 바랍니다.

mcode.co.kr

 

  SQLD 자격증 취득을 위해 계획을 세우기도 했고 실제로 응시도 했었지만 여러 사유로 이제서야 각오를 다지고 재차 도전하게 되었다. 본 강의가 많은 도움이 되길 바란다. 

※ SQLD 취득 플랜: 2023.01.29 - [Cerificate/SQLD] - [SQLD] 자격증 취득을 위한 계획 수립 및 공부 방법

 

Index

    오리엔테이션

    • 데이터베이스: 컴퓨터에 저장되는 데이터의 집합.
    • DBMS: Database Management System. ex) Oracle, mariadb, mysql, etc.
    • RDBMS: Relational Database Management System. 데이터 사이에 관계를 지니는 데이터를 다루고 테이블 형태로 데이터를 저장함.

    MySQL, HeidiSQL 설치

      MySQL (Community Center)과 HeidiSQL (Download) 설치 후 강의 진행. 각 프로그램은 상기 링크를 통해 다운로드 가능.  HeidiSQL은 MySQL을 보다 쉽게 사용할 수 있도록 도와준다. 설치 시 주의사항은 다음과 같다.

    • MySQL 설치 버전은 안정성을 고려해 Innovation 배제하고 타 버전 선택 요망.
    • root 비밀번호는 HeidiSQL에도 입력해야하므로 기억하기 용이한 암호로 설정. 

    HeidiSQL 설치

    1과목

    Database 생성

      HeidiSQL 화면 좌측의 'Unnamed'라는 세션명을 우클릭해 데이터베이스를 새로 생성한다. 이때, 조합은 한글처에 강점이 있는 utf8bm4_general_ci로 지정한다.

    Table

    Create

      Create Table로 Table을 생성한다. 

    CREATE TABLE customers2(
    customer_number INT NOT null,
    customer_name VARCHAR(50) NOT null,
    phone VARCHAR(50) NOT null
    );

    Insert

     Create로 만들어진 Table에 Insert 구문을 입력하여 데이터를 넣는다.

    insert into customers2
    	(customer_number,customer_name,phone) 
    values
    	(1,'이상원','010-1234-5678'),
    	(2,'김상원','010-1234-5679'),
    	(3,'박상원','010-1234-5679')
    ;

    기타

    • Delete: 데이터 삭제.
    • Truncate: 데이터 초기화.
    • Update: 테이블 내용 변경.
    • Alter: 테이블 조건 변경.
    ALTER TABLE newcustomers add 지역 VARCHAR(50);
    ALTER TABLE newcustomers modify 지역 INT;
    ALTER TABLE newcustomers change 지역 Region VARCHAR(10);
    ALTER TABLE newcustomers drop Region;

    외부 데이터 가져오기

    CSV

    CSV 파일 가져오기

      HeidiSQL의 도구표시줄에서 [도구] - [CSV 파일 가져오기]를 클릭.

    • 파일명: 오류방지를 위해 경로에 한글이 없도록 설정한다. 혹시 'Onedrive'가 설정되어 있다면 해당 파일 아이콘을 우클릭해 [속성] - [위치] - [기본값 복원]을 눌러 'Onedrive'가 경로에 나타나지 않도록 설정하는 것을 권장. (관련 링크)
    • 인코딩: UTF-8로 변경.
    • 필드 종결자: ,로 변경.

      위와 같이 설정하고 가져오기를 눌렀을 때, 에러가 발생할 수 있다.

    SQL 오류 (3948)

      이는 local에서 데이터를 가져오는 옵션을 켜놓지 않았기 때문이다. 아래 코드로 해당 기능을 On으로 바꿀 수 있다.

    SET GLOBAL LOCAL_INFILE=TRUE;
    SHOW GLOBAL VARIABLES LIKE 'LOCAL_INFILE';

     

    Database 

      MySQL의 샘플 DB (링크)를 가져오는 케이스에 대한 설명이다. 좌측 URL에서 데이터베이스를 설치하고 [파일] - [SQL 파일 불러오기]를 누른다. 그리고 불러온 sql 탭에서 재생 버튼을 클릭하면 classicmodels라는 데이터베이스가 만들어지는 것을 확인할 수 있다.

    데이터 가져오기 (SELECT FROM)

    SELECT * FROM `newcustomers`;
    SELECT 이름, 영어, 수학,  영어+수학 AS 영수 FROM `exercise1`;
    SELECT productcode AS CODE, quantityordered AS quantity FROM orderdetails;
    SELECT * FROM `exercise1` LIMIT 5, 8;
    SELECT * FROM `exercise1` LIMIT 3 OFFSET 5;
    SELECT DISTINCT 수학 FROM exercise1;
    • AS를 넣어 별칭 부여 가능. (복수 설정도 가능.)
    • Limit: 반환되는 레코드의 수 제한. (예. Limit 5, 8 - 5번째 행부터 8개 출력.)
    • Offset: 첫 레코드 n개 스킵. (예. 첫 5개 건너뛰고 3개 출력.)
      • 예를 들어 Limit 5, 6과 Limit 6 Offset 5는 동일한 값을 출력함.
    • Distinct: 중복값 제거.

    ※ 주석 등 단축키 (링크)

    • 주석: --, # 등으로 설정. 여러줄 주석 - /* ~ */
    • 현재쿼리 실행: ctrl + shift + F9

      이것으로 메타코드M '데이터분석가 입문 필수 SQL 부트캠프' 강의의 오리엔테이션과 제 1과목에 대한 정리를 마치겠다. 다음 글에서는 제 2과목, 연산자, order, group by를 학습하고 내용을 적어보고자 한다.

    728x90
    반응형