MySQL에서 지원하는 컬럼 타입
- Numeric Type : INT의 크기에 따라 다양한 타입 제공, 정수, 실수
- Date and Time Type : DATE, DATETIME, TIMESTAMP, TIME, YEAR
- String Type : CHAR, VARCHAR, Binary, VARBINARY, BLOB, ENUM, SET
- JSON Type : 다양한 JSON 조작함수를 제공
- Spatial Type : 위도와 경도 중심으로한 위치 관련 타임
INSERT/UPDATE/DELETE
- CREATE : 필드별 타입, 형태 작성
- DROP TABEL IF EXISTS [테이블이름]
- INSERT INTO [테이블이름](필드이름1, 필드이름2) VALUES(필드에 맞는 값들);
- primary key의 값은 겹치면 안됨!
- not null일 때는 null값 입력 불가
- 테이블 정의할때의 필드 순서와 같을 때는 필드 list 생략 가능
- DELETE FROM
- 테이블에서 레코드 삭제 or 모든 레코드 삭제
- 단, 테이블은 존재
- DELETE FROM vs TRUNCATE : 조건 없이 모든 레코드 삭제 but 롤백 불가
- UPDATE
- 조건을 기반으로 테이블에서 특정 레코드(들)의 필드 값 수정 가능
- UPDATE [테이블이름] SET [수정될 내용] WHERE [조건]
JOIN
- SQL 조인은 두 개 이상의 테이블들을 공통 필드를 가지고 통합
- JOIN의 결과로 양쪽의 필드를 모두 가진 새로운 테이블이 만들어짐
MySQL 은 FULL JOIN 지원하지 않음 : LEFT JOIN과 RIGHT JOIN을 UNION하는 것으로 대신
- 중복 레코드가 없고 Primary Key의 uniqueness가 보장됨을 체크
- 어느 테이블을 베이스로 잡을지 결졍해야 함