

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# CQL `DELETE` 문을 사용하여 테이블에서 데이터 삭제
<a name="getting-started.dml.delete"></a>

`book_awards` 테이블의 데이터를 삭제하려면 `DELETE` 문을 사용합니다.

행이나 파티션에서 데이터를 삭제할 수 있습니다. 삭제는 되돌릴 수 없으므로 데이터를 삭제할 때는 주의해야 합니다.

테이블에서 하나 또는 모든 행을 삭제해도 테이블은 삭제되지 않습니다. 따라서 데이터를 다시 채울 수 있습니다. 테이블을 삭제하면 테이블과 테이블 내의 모든 데이터가 삭제됩니다. 테이블을 다시 사용하려면 테이블을 다시 생성하여 데이터를 추가해야 합니다. 키스페이스를 삭제하면 키스페이스와 그 안에 있는 모든 테이블이 삭제됩니다. 키스페이스와 테이블을 사용하려면 키스페이스와 테이블을 다시 생성한 다음 데이터로 채워야 합니다. Amazon Keyspaces 특정 시점(PITR) 복구를 사용하면 삭제된 테이블을 복원하는 데 도움이 되며 자세한 내용은 [Amazon Keyspaces에 대한 시점 복구를 통한 데이터 백업 및 복원](PointInTimeRecovery.md) 섹션을 참조하세요. PITR이 활성화된 상태에서 삭제된 테이블을 복원하는 방법을 알아보려면 [Amazon Keyspaces PITR을 사용하여 삭제된 테이블 복원](restoredeleted.md) 섹션을 참조하세요.

## 셀 삭제
<a name="getting-started.dml.delete-cell"></a>

행에서 열을 삭제하면 지정된 셀의 데이터가 제거됩니다. `SELECT` 문을 사용하여 해당 열을 표시하면 데이터가 *null*로 표시되지만 해당 위치에 null 값이 저장되지는 않습니다.

하나 이상의 특정 열을 삭제하는 일반적인 구문은 다음과 같습니다.

```
DELETE column_name1[, column_name2...] FROM table_name WHERE condition ;
```

`book_awards` 테이블에서 2020년 'Richard Roe' 가격의 첫 번째 가격을 획득한 책의 제목은 'Long Summer'임을 확인할 수 있습니다. 이 제목이 호출되었으며 이 셀에서 데이터를 삭제해야 한다고 가정해 보겠습니다.

**특정 셀을 삭제하려면**

1. 를 AWS CloudShell 열고 다음 명령을 사용하여 Amazon Keyspaces에 연결합니다. *us-east-1*을 자체 리전으로 업데이트해야 합니다.

   ```
   cqlsh-expansion cassandra.us-east-1.amazonaws.com 9142 --ssl
   ```

1. 다음 `DELETE` 쿼리를 실행합니다.

   ```
   DELETE book_title FROM catalog.book_awards WHERE year=2020 AND award='Richard Roe' AND category='Fiction' AND rank=1;
   ```

1. 삭제 요청이 예상대로 이루어졌는지 확인합니다.

   ```
   SELECT * FROM catalog.book_awards WHERE year=2020 AND award='Richard Roe' AND category='Fiction' AND rank=1;
   ```

   문의 출력은 다음과 같습니다.

   ```
    year | award       | category | rank | author            | book_title | publisher
   ------+-------------+----------+------+-------------------+------------+---------------
    2020 | Richard Roe |  Fiction |    1 | Alejandro Rosalez |       null | SomePublisher
   ```

## 행 삭제
<a name="getting-started.dml.delete-row"></a>

예를 들어 데이터 삭제 요청을 충족하기 위해 전체 행을 삭제해야 하는 경우가 있을 수 있습니다. 행을 삭제하는 일반적인 구문은 다음과 같습니다.

```
DELETE FROM table_name WHERE condition ;
```

**행을 삭제하려면**

1. 를 AWS CloudShell 열고 다음 명령을 사용하여 Amazon Keyspaces에 연결합니다. *us-east-1*을 자체 리전으로 업데이트해야 합니다.

   ```
   cqlsh-expansion cassandra.us-east-1.amazonaws.com 9142 --ssl
   ```

1. 다음 `DELETE` 쿼리를 실행합니다.

   ```
   DELETE FROM catalog.book_awards WHERE year=2020 AND award='Richard Roe' AND category='Fiction' AND rank=1;
   ```

1. 삭제가 예상대로 이루어졌는지 확인합니다.

   ```
   SELECT * FROM catalog.book_awards WHERE year=2020 AND award='Richard Roe' AND category='Fiction' AND rank=1;
   ```

   이 문의 출력은 행이 삭제된 후와 같습니다.

   ```
    year | award | category | rank | author | book_title | publisher
   ------+-------+----------+------+--------+------------+-----------
   
   (0 rows)
   ```

Amazon Keyspaces Time to Live를 사용하여 테이블에서 만료된 데이터를 자동으로 삭제할 수 있습니다. 자세한 내용은 [Amazon Keyspaces(Apache Cassandra용)의 TTL(Time to Live)을 사용하여 데이터 만료](TTL.md) 섹션을 참조하세요.