2017년 8월 16일 수요일

[Cassandra 레퍼런스] [Data Manipulation] DELETE 문

이 문서는 개인적인 목적이나 배포하기 위해서 복사할 수 있다. 출력물이든 디지털 문서든 각 복사본에 어떤 비용도 청구할 수 없고 모든 복사본에는 이 카피라이트 문구가 있어야 한다.



DELETE

행 또는 행의 일부를 삭제할 때는 DELETE 문을 사용합니다.

delete_statement ::=  DELETE [ simple_selection ( ',' simple_selection ) ]
                      FROM table_name
                      [ USING update_parameter ( AND update_parameter )* ]
                      WHERE where_clause
                      [ IF ( EXISTS | condition ( AND condition )*) ]

예를 들어 :

DELETE FROM NerdMovies USING TIMESTAMP 1240003134
 WHERE movie = 'Serenity';

DELETE phone FROM Users
 WHERE userid IN (C73DE1D3-AF08-40F3-B124-3FF3E5109F22, B70DE1D0-9908-4AE3-BE34-5573E5B09F14);

DELETE 문은 열과 행을 삭제합니다.
열 이름이 DELETE 키워드 다음에 직접 제공되는 경우 해당 열만 WHERE 절에 표시된 행에서 삭제됩니다.
그렇지 않으면 전체 행이 제거됩니다.

WHERE 절은 삭제될 행을 지정합니다.
IN 연산자를 사용하면 하나의 명령문으로 여러 행을 삭제할 수 있습니다.
또한, 부등호 연산자 (예 :> =)를 사용하여 일정한 범위의 행을 삭제할 수 있습니다.

DELETE는 update와 동일하게 TIMESTAMP 옵션을 지원합니다.

DELETE 문에서 동일한 파티션 키 내의 모든 삭제는 독립적이며 개별적으로 적용됩니다.

DELETE 작업은 UPDATE 및 INSERT 문에서 처럼 IF 절을 사용할 수 있습니다.
그러나 INSERT 및 UPDATE 문과 마찬가지로 무시할 수없는 성능 비용이 발생합니다 (내부적으로 Paxos가 사용됨).
따라서 사용하지 않아야합니다.


출처 : http://cassandra.apache.org/doc/latest/cql/dml.html

댓글 없음 :

댓글 쓰기