DELETE命令用于从Cassandra表中删除数据。 您可以使用此命令删除完整的表或选定的行。
语法:
DELETE FROM <identifier> WHERE <condition>;
下面举个例子来演示如何从Cassandra表中删除数据。 我们有一个名为“student
”的表其中列(student_id
,student_fees
, student_name
),这个表中具有以下数据。
cqlsh:yiibai_ks> SELECT * FROM student;
student_id | student_fees | student_name
------------+--------------+--------------
1 | 5000 | Maxsu
2 | 10000 | XunWang
3 | 2000 | Modlee
(3 rows)
cqlsh:yiibai_ks>
删除整行
要删除student_id
为3
的整行记录,请使用以下命令:
DELETE FROM student WHERE student_id=3;
在执行上面语句之后,student_id
为 3
的行记录已被删除。 您可以使用SELECT命令验证它。
cqlsh:yiibai_ks> SELECT * FROM student;
student_id | student_fees | student_name
------------+--------------+--------------
1 | 5000 | Maxsu
2 | 10000 | XunWang
3 | 2000 | Modlee
(3 rows)
cqlsh:yiibai_ks> DELETE FROM student WHERE student_id=3;
cqlsh:yiibai_ks> SELECT * FROM student;
student_id | student_fees | student_name
------------+--------------+--------------
1 | 5000 | Maxsu
2 | 10000 | XunWang
(2 rows)
cqlsh:yiibai_ks>
删除一个特定的列名
示例:
删除student_id
为2
的记录中的student_fees
列中的值。
DELETE student_fees FROM student WHERE student_id=2;
现在删除 您可以验证:
cqlsh:yiibai_ks> SELECT * FROM student;
student_id | student_fees | student_name
------------+--------------+--------------
1 | 5000 | Maxsu
2 | 10000 | XunWang
(2 rows)
cqlsh:yiibai_ks> DELETE student_fees FROM student WHERE student_id=2;
cqlsh:yiibai_ks> SELECT * FROM student;
student_id | student_fees | student_name
------------+--------------+--------------
1 | 5000 | Maxsu
2 | null | XunWang
(2 rows)
cqlsh:yiibai_ks>