📜  更改表以在 Cassandra 中添加集合数据类型

📅  最后修改于: 2021-09-09 11:22:45             🧑  作者: Mango

在本文中,我们将讨论如何更改表以添加 MAP 集合数据类型,以及如何在 UPDATE 命令的帮助下更改表后插入数据。让我们一一讨论。
首先,我们将创建一个表,让我们考虑 E_book 是一个表名,Bookk_name、Author_name、Selling_price 是 E_book 表中的字段。我们来看一下。

Create table E_book
(
Book_name text,
Author_name text,
ISBN int,
Primary key(Book_name)
); 

现在,我们将使用下面给出的以下 CQL 查询插入一些数据。

Insert into E_book(Book_name, Author_name, ISBN) 
Values ('Attitude is Everything', 'Jeff keller', 123 );

Insert into E_book(Book_name, Author_name, ISBN) 
Values ('Life without Limits', 'Nick Vujicic', 124 );

Insert into E_book(Book_name, Author_name, ISBN) 
Values ('Wings of fire', 'Dr. APJ abdul kalam', 125 ); 

来看看结果吧

select * 
from E_book; 

输出:

现在,在这里我们将使用 ALTER TABLE 命令添加一个新的集合数据类型列。我们来看一下。

ALTER TABLE E_book 
ADD price map; 

现在,验证使用以下 cqlsh 查询。

describe table E_book; 

输出:

在上面的 Cassandra 查询语言 (CQL) 查询中,我们使用了 MAP 集合,我们在其中插入了键对值。现在,成功更改表后,我们将使用 UPDATE 命令插入数据。

我们来看一下。

UPDATE E_book 
SET price = price + {'selling price' : 280, 'Actual price ' : 200} 
WHERE Book_name = 'Attitude is Everything'; 

现在,为了验证结果,我们将使用下面给出的以下 CQL 查询。

SELECT price FROM E_book 
WHERE Book_name = 'Attitude is Everything';

输出: