개발 준비/MySql

일할 때 반드시 알아야 하는 SQL 구문

세리블리 2022. 7. 10. 20:11
반응형

CRUD

  • C : Creat (INSERT INTO ...)
  • R : Read (SELECT * FROM)
  • U : Update (UPDATE ... SET)
  • D : Delete (DELECT FROM)

 

 

테이블 생성하기

CREATE TABLE 테이블명;

CREATE TABLE dept (
    dept_id      INT AUTO_INCREMENT PRIMARY KEY,
    dept_name    VARCHAR(100) NOT NULL,
    dept_loc     VARCHAR(200) NOT NULL
);

 

 

 

SELECT(조회)

테이블 조회하기

SELECT * FROM TABLE_NAME

 

WHERE, 조건 걸고 조회하기

WHERE 는 테이블에서 데이터를 가져올 때 조건을 지정하는데 사용된다. WHERE 뒤에 작성한 조건이 충족되면 충족한 값만 보여지게 된다. 

SELECT * FROM TABLE_NAME
WHERE COLUMN_NAME = "값"

SELECT * FROM TABLE_NAME
WHERE COLUMN_NAME >= 10;

// 값이 null인 것 조회
SELECT * FROM TABLE_NAME
WHERE COLUMN_NAME IS NULL

 

 

 

UPDATE (업데이트)

업데이트할 때에도 항상 조건을 달아서 처리할 것을 권장한다. 업데이트 후에는 그 전 데이터로 복구할 수 없다. WHERE 로 조건을 달면 그 조건에 해당하는 데이터만 수정된다.

데이터 업데이트 하기

UPDATE TABLE_NAME SET COLUMN_NAME_1 = "변경할 값"
WHERE COLUMN_NAME_1 = 기존 값;

// 여러개 수정할 때
UPDATE TABLE_NAME
SET COLUMN_NAME_1 = "변경할 값",
SET COLUMN_NAME_2 = "변경할 값",
SET COLUMN_NAME_3 = "변경할 값",
WHERE COLUMN_NAME_1 = 기존 값;

 

컬럼 복제하기

A라는 컬럼을 B로 복제하고 싶을 때 UPDATE를 이용하여 쉽게 복제할 수 있다. 조건이 필요할 때에는 WHERE 절을 사용한다.

UPDATE TABLE_NAME COLUMN_NAME = ORIGIN_COLUMN_NAME
WHERE ...

 

 

 

*삭제는 조심해서 사용해야한다. 실행하면 복구할 수 없다.

DELETE (내용 삭제)

DELETE에서 WHERE(조건)이 없으면 테이블에서 모든 행을 제거한다. 그러므로 반드시 조건을 줘야한다.

DELETE를 실행하면 다시는 되돌릴 수 없으므로 신중하게 작성한다.

DELETE FROM TABLE_NAME
WHERE 조건 값;

// STUDENT 테이블에서 폰에 343이 들어가는 컬럼 삭제
DELETE FROM STUDENT
WHERE PHONE LIKE '%343%';

 

 

DROP(구조까지 완전한 삭제)

DROP은 내용 뿐 아니라 구조까지 완전히 삭제하는 것이다.

DROP TABLE 테이블명;
DROP DATABASE 데이터베이스명;

 

 

 

TRUNCATE (테이블의 데이터  전체 삭제)

TRUNCATE는 테이블 자체는 삭제하지 않지만 데이터를 전체 삭제할 때 사용하는 구문이다. 

TRUNCATE TABLE_NAME

반응형