Jay's Cookbook
Menu
  • Tags
  • Categories
  • Projects
Computer Science
OS
Network
Data Structure
Algorithm
Language
Code Architecture
Python
Javascript
Typescript
Java
Backend
Backend Theory
TypeORM
Node.js
NestJS
FastAPI
Frontend
HTML/CSS
React
Next.js
Data Engineering
DE Theory
MySQL
MongoDB
Elastic
Redis
Kafka
Spark
Airflow
AI
Basic
Pytorch
NLP
Computer Vision
Data Analytics
Statistics
Pandas
Matplotlib
DevOps
Git
Docker
Kubernetes
AWS
[MySQL] DML(4): INSERT, UPDATE, DELETE
data_engineering
mysql

[MySQL] DML(4): INSERT, UPDATE, DELETE

Jay Kim
Jay Kim 21 Mar 2021
[MySQL] DML(3): SELECT 중급 WINDOW [MySQL] DDL: CREATE, ALTER, RENAME, DROP, TRUNCATE

Table of Contents

  • INSERT
  • UPDATE
  • DELETE
  • SQL문 데이터 타입

INSERT

-- 데이터 추가
INSERT INTO <테이블명> (col1, col2, col3, ...)
     VALUES (val1, val2, val3, ...);

-- 특정 col에만 데이터 넣을 수도 있다
INSERT INTO <테이블명> (col1, col3)
     VALUES (val1, val3);

-- SET을 이용한 방법
INSERT INTO <테이블명> 
        SET col1=val1, col2=val2;

UPDATE

-- 데이터 갱신
UPDATE <테이블명>
   SET col1 = <갱신 데이터> WHERE <조건>; 

-- 기존 값을 기준으로 갱신
UPDATE <테이블명>
   SET col1 = <col1 + 3> WHERE <조건>; 

DELETE

-- 테이블을 사용했던 흔적이 남는다 
-- (AUTO_INCREMENT된 프라이머리키가 15에서 모두 삭제돼도 다음 삽입되는 프라이머리 키가 1이 아니라 16이 됨)
DELETE FROM <테이블명>
      WHERE <조건>

-- 테이블을 사용했던 흔적을 아예 없앤다
TRUNCATE <테이블명>
   WHERE <조건>

SQL문 데이터 타입

종류 타입
정수형 TINYINT, SMALLINT, MEDIUMINT, INT, BIGINT
실수형 DECIMAL, FLOAT, DOUBLE
날짜 및 시간 DATE, TIME, DATETIME, TIMESTAMP
문자열 CHAR, VARCHAR, TEXT
  • TINYINT
    signed: -128 ~ 127
    unsigned: 0 ~ 255

  • INT
    signed: -2147483648 ~ 2147483647
    unsigned: 0 ~ 4294967295

  • DECIMAL
    DECIMAL(M, D): M은 전체 숫자의 최대 자리수, D는 소수점 자리 숫자의 최대 자리수
    DECIMAL(5, 2): -999.99 ~ 999.99
    M은 최대 65까지 가능, D는 최대 30까지 가능

  • FLOAT
    -3.4 * 10^38 ~ 3.4 * 10^38

  • DOUBLE
    -1.7 * 10^308 ~ 1.7 * 10^308
    FLOAT와 비교해 범위도 더 넓고, 정밀도 또한 더 높음(더 많은 소수점 자리 수 지원)

  • DATE
    날짜를 저장하는 데이터 타입
    ’2021-03-21’ 이런 형식의 연, 월, 일 순

  • TIME 시간을 저장하는 데이터 타입
    ’09:27:31’ 이런 형식의 시, 분, 초

  • DATETIME
    날짜와 시간을 저장하는 데이터 타입
    ’2021-03-21 09:30:27’ 이런 식으로 연, 월, 일, 시, 분, 초

  • TIMESTAMP
    DATETIME과 같다
    차이점은 TIMESTAMP는 타임 존 정보도 포함

  • CHAR CHAR(30): 최대 30자의 문자열을 저장 (0~255까지 가능)
    차지하는 용량이 항상 숫자값에 고정됨
    데이터의 길이가 크게 변하지 않는 상황에 적합

  • VARCHAR
    VARCHAR(30): 최대 30자의 문자열을 저장 (0~65536까지 가능)
    차지하는 용량이 가변적. 30이어도 그 이하의 길이면 용량도 적게 차지함
    해당 값의 사이즈를 나타내는 부분(1byte 또는 2byte)이 저장 용량에 추가 데이터 길이가 크게 들쑥날쑥해지는 경우에 적합

  • TEXT
    문자열이 아주 긴 상황에 적합

[MySQL] DML(3): SELECT 중급 WINDOW [MySQL] DDL: CREATE, ALTER, RENAME, DROP, TRUNCATE

You may also like

See all mysql
12 Jul 2022 [MySQL] SQL을 이용한 데이터 분석에서 겪었던 다양한 경험들
data_engineering
mysql

[MySQL] SQL을 이용한 데이터 분석에서 겪었던 다양한 경험들

11 Jul 2022 [MySQL] SQL 문제
data_engineering
mysql

[MySQL] SQL 문제

03 Jul 2022 [MySQL] 그라파나를 이용해 MySQL 서버 모니터링 하기
data_engineering
mysql

[MySQL] 그라파나를 이용해 MySQL 서버 모니터링 하기

Jay Kim

Jay Kim

Web development, data engineering for human for the Earth. I share posts, free resources and inspiration.

Rest
Lifestyle
Hobby
Hobby
Hobby
Hobby
2025 © Jay's Cookbook. Crafted & Designed by Artem Sheludko.