[zero-base/] DS Part 5. SQL - 36일차 스터디 노트

손윤재·2024년 1월 22일

제로베이스 DS 22기

목록 보기
37/55
post-thumbnail

DDL: Table 사용

  • Data Definition Language는 Table을 생성, 변경, 삭제하는 SQL이다.
  • Table은 데이터베이스 내에 데이터가 저장되는 형태로 행(Row) 과 열(Column)으로 구성된 데이터 집합이다.

  • Table 구조


🔰 CREATE

  • 테이블을 생성하는 명령어이다.
	// 테이블 생성
    CREATE TABLE table_name(
          colunm1 data_type,
          colunm2 data_type,
          ...
    );
    
    // 현재 데이터베이스 내에 모든 테이블의 목록 확인
    SHOW TABLES;
    
    // Table 정보 확인
    DESC table_name; 

🔰 ALTER

  • 테이블을 변경/수정하는 명령어이다.

  • 테이블 이름 변경

    ALTER TABLE tbl_name RENAME new_tbl_name;
  • 테이블 컬럼 추가
    ALTER TABLE tbl_name ADD COLUMN col_name datatype;
  • 테이블 컬럼 변경
    ALTER TABLE tbl_name MODIFY COLUMN col_name datatype;
    
    // 컬럼명과 자료형을 같이 바꿀 수 있다.
    ALTER TABLE tbl_name CHANGE COLUMN old_col_name new_col_name datatype;
  • 테이블 컬럼 삭제
	ALTER TABLE table_name DROP COLUMN column_name;

🔰 DROP

  • 테이블을 삭제하는 명령어이다.
    DROP TABLE table_name;



DML: Data 사용

테이블의 튜플들을 생성하고, 삭제, 편집, 조회하는 SQL이다.

  • 실습할 데이터베이스 생성
	CREATE DATABASE zerobase DEFAULT CHARACTER SET utf8mb4
	-> 기본 문자 자료형으로 utf8과 이모지를 사용할 수 있는 mb4를 설정해 준다.
  • 실습할 데이터베이스로 이동하고, 실습할 테이블을 만든다.
    USE zerobase;
    CREATE TABLE person(
            id int,
            name varchar(16),
            age int,
            sex char
    );
    DESC person;


🔰 INSERT INTO

  • 테이블에 데이터를 추가하는 명령어로 항상 INTO와 짝을 이루어 사용된다.
    INSERT INTO table_name (col1, col2, ...) VALUES (val1, val2, ...);

        ☣ 주의! 입력한 컬럼 이름의 순서와 데이터 값의 순서가 일치해야 한다.

  • 모든 컬럼에 값을 추가하는 경우 컬럼 이름을 지정하지 않아도 된다.
    단, 입력하는 데이터의 순서가 테이블의 컬럼 순서와 동일해야 한다.
    INSERT INTO person (id, name, age, sex) VALUES (1, '이효리', 43, 'F');
    INSERT INTO person VALUES (2, '이상순', 48, 'M');

🔰 SELECT ~ FROM

  • 테이블의 데이터를 조회하는 명령어로 항상 FROM과 짝을 이루어 쓰인다.

  • *은 Table 내 전체 컬럼 데이터를 조회한다.

    SELECT column1, column2, ... FROM table_name;
    SELECT * FROM table_name; --> 모든 컬럼 조회

🔰 UPDATE ~ SET

  • 테이블의 데이터를 수정하는 명령어로 항상 SET과 짝을 이루어 쓰인다.

  • WHERE은 수정할 데이터를 구체적으로 지정하는 조건을 추가해 준다.
    조건을 달지 않으면 해당 컬럼의 모든 데이터 값이 바뀐다.

    UPDATE table_name SET column1=value1, column2=value2, ...
    	WHERE condition;

🔰 DELETE FROM

  • 테이블의 데이터를 삭제하는 명령어로 항상 FROM과 짝을 이루어 쓰인다.

  • WHERE은 삭제할 데이터의 조건을 추가해 준다.

    DELETE FROM table_name WHERE condition;
  • 조건을 달지 않으면 해당 컬럼의 모든 데이터가 삭제된다.
    테이블의 모든 데이터만 삭제될 뿐, 테이블의 프레임은 그대로 남는다.
    DELETE FROM table_name;

    // Table을 삭제하고 싶다면,
    DROP TABLE table_name;
profile
ISTP(정신승리), To Be Data Scientist

0개의 댓글