데이터 분석/SQL

[쉽게 쓴 SQL] INSERT 구문

참치바나나 2020. 11. 23. 10:46

테이블에 데이터를 삽입할 때 사용

table_name이라는 테이블에 value들을 순서대로 넣겠다.

INSERT 
	INTO table_name
VALUES 
	(value1,value2,value3,...)
;

 

자동으로 내용 들어감 (잘 안쓰임)

 

table_name이라는 테이블의 column1,column2에 value1,2를 각각 넣겠다.

INSERT 
	INTO table_name 
		(column1,column2)
VALUES 
	(value1,value2)
;

직접 넣는다.

 

예제) link라는 테이블을 만들어 데이터를 넣는다.

CREATE TABLE link ( 
	id serial PRIMARY KEY , 
	url varchar(255) NOT NULL , 
	name varchar(255) NOT NULL , 
	description varchar(255) , 
	rel varchar(50) 
);

INSERT 
	INTO link
		(url, name)
	VALUES ('http://naver.com','naver');
	
COMMIT;

SELECT * FROM link;

commit을 하고 select 구문으로 확인.

 

link와 같은 column을 가진 테이블을 만든다

CREATE TABLE link_tmp AS
	SELECT * FROM link WHERE 0=1; 

'WHERE 0=1'은 'False'를 뜻함. 즉, link 테이블에 들어있는 내용은 안가지고 오겠다는 의미.

 

link 테이블의 내용을 전부 가져온다

INSERT INTO link_tmp 
	SELECT *
	FROM link;

 

link와 link_tmp가 동일하다는 것을 확인

SELECT * FROM link_tmp
EXCEPT
SELECT * FROM link;

SELECT * FROM link
EXCEPT
SELECT * FROM link_tmp;

'데이터 분석 > SQL' 카테고리의 다른 글

[쉽게 쓴 SQL] UPDATE JOIN 문  (0) 2020.11.23
[쉽게 쓴 SQL] UPDATE 문  (0) 2020.11.23
[쉽게 쓴 SQL] EXISTS  (0) 2020.11.21
[쉽게 쓴 SQL] ANY 그리고 IN, ALL  (0) 2020.11.21
[쉽게 쓴 SQL] 서브쿼리란?  (0) 2020.11.09