当前位置: 首页 > 教程 > Cassandra >

Cassandra删除数据记录

精华
小牛编辑
203浏览
2023-03-14

DELETE命令用于从Cassandra表中删除数据。 您可以使用此命令删除完整的表或选定的行。

语法:

DELETE FROM <identifier> WHERE <condition>;

下面举个例子来演示如何从Cassandra表中删除数据。 我们有一个名为“student”的表其中列(student_idstudent_feesstudent_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_id3的整行记录,请使用以下命令:

DELETE FROM student WHERE student_id=3;

在执行上面语句之后,student_id3 的行记录已被删除。 您可以使用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_id2的记录中的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>