Open Source RDBMS - Seamless, Scalable, Stable and Free

한국어 | Login |Register

Versions available for this page: CUBRID 8.2.1 |  CUBRID 8.3.0 |  CUBRID 8.3.1 |  CUBRID 8.4.0 |  CUBRID 8.4.1 |  CUBRID 8.4.3 |  CUBRID 9.0.0 | 



DELETE

설명

DELETE 문을 사용하여 테이블 내에 레코드를 삭제할 수 있으며, WHERE 절과 결합하여 삭제 조건을 명시할 수 있다. 삭제하고자 하는 레코드의 개수를 한정하려면 LIMIT 절에 삭제하고자 하는 레코드 개수를 지정할 수 있다. WHERE 절을 만족하는 레코드 개수가 row_count를 초과하면 row_count 개의 레코드만 삭제된다.

구문

DELETE FROM <table_specification> [ WHERE <search_condition> ] [LIMIT row_count]

 

<table_specification> ::= <table_hierarchy> | ( <table_hierarchy_comma_list )

 

<table_hierarchy> ::= [ ONLY ] <table_name> |

                      ALL <table_name> [ EXCEPT <table_specification> ]

  • table_name : 삭제할 데이터가 포함되어 있는 테이블의 이름을 지정한다.
  • search_condition : WHERE 절을 이용하여 search_condition을 만족하는 데이터만 삭제한다. 생략할 경우 지정된 테이블의 모든 데이터를 삭제한다.
  • row_count : LIMIT 절에 삭제할 레코드 수를 명시하며, 0보다 큰 정수를 지정할 수 있다.
예제

CREATE TABLE a_tbl(

id INT NOT NULL,

phone VARCHAR(10));

INSERT INTO a_tbl VALUES(1,'111-1111'), (2,'222-2222'), (3, '333-3333'), (4, NULL), (5, NULL);

 

DELETE FROM a_tbl WHERE phone IS NULL LIMIT 1;

 

--delete one record only from a_tbl

SELECT * FROM a_tbl;

           id  phone

===================================

            1  '111-1111'

            2  '222-2222'

            3  '333-3333'

            5  NULL

 

--delete all records from a_tbl

DELETE FROM a_tbl;