반응형

[MariaDB] 마리아DB SQL 쿼리 기본 - INSERT, UPDATE, DELETE (MySQL)

 

INSERT 기본형식

USE DB명;
CREATE TABLE 테이블명 (열이름1 INT, 열이름2 CHAR(3), 열이름3 INT);
INSERT INTO 테이블명 VALUES (1,'김이박', 30); -- 위 테이블에 생성된 열이름 순서에 맞게 INSERT 됨

INSERT INTO 테이블명(열이름1, 열이름2) VALUES (2, '박서왕'); -- 열이름3에는 NULL값이 입력됨

INSERT INTO 테이블명(열이름3, 열이름1, 열이름2) VALUES (40, 3, '이전심'); -- 열이름 3,1,2 순서로 입력됨

 

AUTO_INCREMENT(순서열 같은 경우 자동으로 1부터 증가된 값을 입력해주는 기능)

USE DB명;
CREATE TABLE 테이블명
  (순서열이름  int AUTO_INCREMENT PRIMARY KEY,  -- 순서열이름 열은 자동증가, 기본키
   열이름2 char(3), 
   열이름3 int );
INSERT INTO 테이블명 VALUES (NULL, '곽민아', 35); -- NULL 값이 아닌 1이 입력됨
INSERT INTO 테이블명 VALUES (NULL, '서나리', 32); -- 2가 입력됨
INSERT INTO 테이블명 VALUES (NULL, '유은성', 31); -- 3이 입력됨

 

다른 테이블의 조회값을 INSERT 하기

USE DB명;
CREATE TABLE 테이블명 (열이름1 int, 열이름2 varchar(50), 열이름3 varchar(50));
INSERT INTO 테이블명
  SELECT 조회열1, 조회열2, 조회열3  -- 인서트할 테이블의 열과 같은 수, 같은 데이터형식을 SELECT 해야함
    FROM 조회DB.조회테이블 ;

 

 

UPDATE (데이터 수정)

USE DB명;
UPDATE 테이블명 SET 열이름 = 바꿀값 WHERE 조건문;

// 예시
UPDATE 테이블명 SET 가격열 = 가격열 * 10; -- 가격열의 값을 모두 10을 곱하여 변경

 

조건부 데이터 입력(INSERT), 변경(UPDATE)

INSERT INTO 테이블명 VALUES('값1' , '값2', '값3')  -- 값1,2,3을 테이블에 입력합니다.
	ON DUPLICATE KEY UPDATE 열이름2='값2', 열이름3='값3';  -- 만약 기본키가 중복되면 열이름2를 값2로, 열이름3을 값3로 업데이트합니다.

 

 

DELETE FROM (행단위 삭제)

USE DB명;
DELETE FROM 테이블명 WHERE 조건문;

//예시
DELETE FROM 테이블명 WHERE 이름열 = '김이박'; -- 이름열 값이 김이박인 행들을 모두 지움

 

DELETE, DROP, TRUNCATE 차이

DELETE FROM 테이블명;	-- DML문. 트랜젝션 로그를 기록하여 느림. 테이블 모든 행 삭제.
DROP TABLE 테이블명;	-- DDL문. 트랜젝션 발생하지 않아 빠름. 테이블 자체를 삭제.
TRUNCATE TABLE 테이블명;	-- DDL문. 트렌젝션을 발생하지 않아 빠름. 테이블의 모든 행 삭제

 

 

[MariaDB] 전체보기

 

'MariaDB' 카테고리의 글 목록

전산 관련 경험을 기록 하는 곳

reddb.tistory.com

반응형