cassandra的幾種集合型別(list、set、map)增強了資料庫的表現力,這幾種資料型別用的很方便。我簡單總結了一下這幾種型別的使用方法。
社會我二哥,人狠話不多,直奔主題
舉例:
create table test(
a int,
b list,
c set,
d map,
primary key(a)
);
插入使用下面的形式
insert into test(a,b,c,d) values(1,['listtext1','listtext2'],,);
第一: list型別
增加元素:
update test set b=b+[『listtext3′,』listext4』] where a=1;
刪除第i個元素:
你可以使用
delete b[i] from test where a=1;
或者 update test set b[i]=null where a=1;
注:後者的方法是可行的,不過官方文件沒有說明
刪除內容為listtext1和listtext2的元素
update test set b = b-[『listtext1′,』listtext2』] where a=1;
第二: set型別
增加元素
update test set c=c+ where a=1;
刪除元素
update test set c=c- where a=1;
第三:map型別
增加元素
update test set d[『mapkey3′] =』mapvalue3』 where a=1;
或者 update test set d=d+ where
a=1;
注:後者的方法是可行的,不過官方文件沒有說明
刪除元素
delete d[『mapkey3』] from test where a=1;
或者 update test set d[『mapkey3』]=null where a=1;
注:後者的方法是可行的,不過官方文件沒有說明
cassandra中集合型別不能做主鍵,不能建索引。
這種集合型別做為查詢條件很弱,只有map可以使用元素作為查詢條件,而且必須加allow filtering
select * from test where a=1 and d['mapkey1']='mapvale2' allow filtering;
cassandra關於集合型別的操作
舉例 create table test a int,b list,c set,d map,primary key a 插入使用下面的形式 insert into test a,b,c,d values 1,listtext1 listtext2 第一 list型別 增加元素 update test...
cassandra關於集合型別的操作
舉例 create table test a int,b list,c set,d map,primary key a 插入使用下面的形式 insert into test a,b,c,d values 1,listtext1 listtext2 第一 list型別 增加元素 update test...
關於cassandra資料庫
nosql資料庫 基於列的資料庫 高度可擴充套件的高效能分布式資料庫 cassandra的特點 1 彈性可擴充套件。2 始終基於架構,沒有單點故障。3 快速線性效能。4 靈活的資料儲存,支援結構化,半結構化和非結構化。5 便捷資料分發,多資料中心間複製資料。6 支援事務。7 快速寫入。cassand...