PostgreSQL DELETE 문을 사용하여 테이블에서 데이터를 삭제 하는 방법

 

DELETE문을 사용하면 테이블에서 하나 이상의 행을 삭제할 수 있습니다.

DELETE FROM table_name
WHERE condition;
  • 먼저, DELETE FROM키워드 뒤에 데이터를 삭제할 테이블의 이름을 지정합니다 .
  • 둘째, WHERE절의 조건을 사용 하여 테이블에서 삭제할 행을 지정합니다.

* WHERE절 을 생략하면 DELETE명령문이 테이블의 모든 행을 삭제합니다.

* DELETE명령문이 행을 삭제하지 않은 경우 0을 반환합니다 .

 

삭제된 열을 반환하려면 하단에 삽입합니다.

RETURNING (select_list | *)
DELETE문은 테이블에서 데이터를 제거합니다. 테이블의 구조를 수정하지 않습니다. 
컬럼을 제거하는 등 테이블의 구조를 변경하고자 할 경우에는 해당 ALTER TABLE명령문을 사용해야 합니다 .

 

반응형

DROP TABLE IF EXISTS links;

CREATE TABLE links (
    id serial PRIMARY KEY,
    url varchar(255) NOT NULL,
    name varchar(255) NOT NULL,
    description varchar(255),
    rel varchar(10),
    last_update date DEFAULT now()
);
INSERT INTO  
   links 
VALUES 
   ('1', 'https://www.postgresqltutorial.com', 'PostgreSQL Tutorial', 'Learn PostgreSQL fast and easy', 'follow', '2013-06-02'),
   ('2', 'http://www.oreilly.com', 'O''Reilly Media', 'O''Reilly Media', 'nofollow', '2013-06-02'),
   ('3', 'http://www.google.com', 'Google', 'Google', 'nofollow', '2013-06-02'),
   ('4', 'http://www.yahoo.com', 'Yahoo', 'Yahoo', 'nofollow', '2013-06-02'),
   ('5', 'http://www.bing.com', 'Bing', 'Bing', 'nofollow', '2013-06-02'),
   ('6', 'http://www.facebook.com', 'Facebook', 'Facebook', 'nofollow', '2013-06-01'),
   ('7', 'https://www.tumblr.com/', 'Tumblr', 'Tumblr', 'nofollow', '2013-06-02'),
   ('8', 'http://www.postgresql.org', 'PostgreSQL', 'PostgreSQL', 'nofollow', '2013-06-02');

 

SELECT * FROM links;

 

1) PostgreSQL DELETE를 사용하여 테이블에서 한 행 삭제

-- id가 8인 행 삭제 쿼리
DELETE FROM links
WHERE id = 8;

 

2) PostgreSQL DELETE를 사용하여 행 삭제 및 삭제된 행 반환

-- id가 7인 행을 삭제하고 삭제된 행을 반환하는 쿼리
DELETE FROM links
WHERE id = 7
RETURNING *;

 

3) PostgreSQL DELETE를 사용하여 테이블에서 여러 행 삭제

-- id 5,6 여러개를 삭제하는 쿼리
DELETE FROM links
WHERE id IN (6,5)
RETURNING *;

 

4) PostgreSQL DELETE를 사용하여 테이블에서 모든 행 삭제

-- 모든 행 삭제 쿼리
DELETE FROM links;

  • DELETE FROM문을 사용하여 테이블에서 하나 이상의 행을 삭제합니다.
  • WHERE절을 사용하여 삭제할 행을 지정합니다.
  • RETURNING절을 사용하여 삭제된 행을 반환합니다.
반응형

'SW ENGINEERING > Postgres' 카테고리의 다른 글

[PostgreSQL] BASIC - Transaction  (0) 2021.09.06
[PostgreSQL] BASIC - Upsert  (0) 2021.09.06
[PostgreSQL] BASIC - UPDATE Join  (0) 2021.09.06
[PostgreSQL] BASIC - UPDATE  (0) 2021.09.06
[PostgreSQL] BASIC - INSERT Multiple Rows  (0) 2021.09.06
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기