一、字符串
以實(shí)際輸入的命令為例
1.建立鍵值對(duì)
set bar 1
建立了一個(gè)鍵值對(duì),鍵名叫bar,鍵值是1
2.判斷鍵是否存在
exists bar
判斷鍵名bar是否存在
若存在則返回1,不存在返回0
3.刪除鍵
del bar
刪除鍵名為bar的鍵值對(duì)
若刪除成功則返回刪除的個(gè)數(shù),刪除失?。ú淮嬖冢﹦t返回0
4.查看所有的鍵
keys *
5.獲得鍵值的數(shù)據(jù)類型
type foo
獲得鍵名為foo的鍵值類型
返回值類型可能有 string(字符串),hash(散列),list(列表),set(集合),zset(有序集合)
6.獲得鍵對(duì)應(yīng)的值
get foo
獲得鍵名為foo的鍵值
7.自增
incr foo
創(chuàng)建一個(gè)foo的鍵值對(duì),并自增為1
但是運(yùn)行type foo 時(shí),顯示為string
增加特定數(shù)值
incrby foo 3
使foo增加3
8.自減
decr foo
減小1個(gè)數(shù)值
decrby foo 3
減小3個(gè)數(shù)值
9.增加指定浮點(diǎn)數(shù)
1incrbyfloat bar 2.5
bar增加指定的浮點(diǎn)數(shù)2.5
10.向尾部追加值
append bar hehe
append bar “ world”
如果是要追加帶空格的內(nèi)容,則要用空格引起來(lái)
返回值是一個(gè)數(shù)字,代表現(xiàn)在鍵值的長(zhǎng)度
11.獲取字符串長(zhǎng)度
strlen bar
返回值是一個(gè)數(shù)字,代表現(xiàn)在的字符串長(zhǎng)度
12.同時(shí)設(shè)置多個(gè)鍵值對(duì)
mset key1 value1 key2 value2 key3 value3
13.同時(shí)獲得多個(gè)鍵值對(duì)應(yīng)內(nèi)容
mget key1 key2
1)value1
2)value2
二、散列
1.賦值和取值
hset key field value
例如:
hset car price 500
hget car price
同時(shí)賦值多個(gè)字段的值
hmset car price 500 name BMW
hmget car price name
2.判斷字段是否存在
hexists car price
3.只獲得字段名
hkeys car
4.只獲得字段值
hvals car
5.獲得字段數(shù)量
hlen key
三、列表
1.向兩邊添加元素
lpush group 1
rpush group 2
結(jié)果
1) “1”
2) “2”
lpush 是向左邊添加元素,rpush 是向右邊添加元素。
2. 從兩邊彈出元素
lpop group
rpop group
lpop 是從左邊彈出元素, rpop 是從右邊彈出元素,顯示元素的值
3.獲取列表中元素的個(gè)數(shù)
llen group
4.獲得列表片段
lrange group 0 3
lrange group -2 -1
其中 -2 -1 為負(fù)索引,這個(gè)也是可行的。-2代表倒數(shù)第二個(gè)元素,-1代表倒數(shù)第一個(gè)元素。
特殊地:獲取所有元素則可以這么寫
lrange group 0 -1
5.刪除列表中指定的值
lrem group count value
當(dāng)count > 0,它會(huì)從左邊開始刪除前count個(gè)值為value的元素。
當(dāng)count < 0,它會(huì)從右邊開始刪除前|count|個(gè)值為value的元素。
但count = 0,它會(huì)刪除所有值為value的元素。
6.獲得索引處的值
lindex group 0
獲得索引0位置的元素值
7.設(shè)置索引處的值
lset group 1 5
將 group 索引 1 處的值改為 5
8.只保留特定的片段
ltrim group 0 1
只保留索引0到1的值,其余的刪除
9.向列表中插入元素
linsert group after 2 5
從左邊開始查詢,找到數(shù)字2,在后面插入數(shù)字5
insert group before 2 5
從左邊開始查詢,找到數(shù)字2,在前面插入數(shù)字5
四、集合
1.添加元素
sadd hello 2 4 5
向集合中添加2 4 5元素,返回值是成功加入的元素?cái)?shù)量
2.刪除元素
srem hello 4 5
從集合中刪除4 5,返回值是成功刪除的元素?cái)?shù)量
3.獲得集合中所有元素
smembers hello
4.判斷元素是否在集合中
sismember hello 2
判斷2是否在集合hello中
存在返回1,不存在返回0
5.集合的運(yùn)算
差集
sdiff setA setB
返回值是集合,返回的是存在集合A中但是不存在B中的元素集合
交集
sinter setA setB
返回值是setA和setB的交集
并集
sunion setA setB
6.獲得集合大小
scard setA
返回值是數(shù)目
7.隨機(jī)獲得集合中的數(shù)字
srandmember setA
五、有序集合
1.增加元素
增加時(shí)需要指定元素的分?jǐn)?shù)和元素的名稱
zadd score 89 Tom 45 Amy
分?jǐn)?shù)不僅可以是整數(shù),還可以是浮點(diǎn)數(shù)
zadd score 2.3 Mike
zadd score +inf Bob
2.獲得元素分?jǐn)?shù)
zscore score Tom
如果不存在,返回(nil)
3.獲得排名在某個(gè)范圍內(nèi)的元素列表
zrange score 0 2
帶分?jǐn)?shù)顯示
zrange score 0 -1 withscores
4.獲得指定分?jǐn)?shù)范圍的元素
zrangebyscore score 45 80
獲得45分到80分的元素,閉區(qū)間
如果不想是閉區(qū)間,則可以在索引前面加上(
zrangebyscore score (45 80
5.取某幾個(gè)值
zrangebyscore score (45 80 limit 0 3
?。?5,80]之間的元素,從第一個(gè)開始,取3個(gè)
6.增加某個(gè)元素分?jǐn)?shù)
zincrby score 5 Tom
給某個(gè)元素加5分
zincrby score -2 Tom
給某個(gè)元素減2分
7.給某個(gè)元素重新賦值分?jǐn)?shù)
同樣用zadd命令
zadd score 22 Tom
8.獲得集合中元素的數(shù)量
zcard score
9.獲得指定分?jǐn)?shù)范圍內(nèi)元素個(gè)數(shù)
zcount score 79 90
10.刪除一個(gè)或者多個(gè)元素
zrem score Tom
11.按照分?jǐn)?shù)刪除元素
zremrangebyrank score 0 1
它先會(huì)把它按照分?jǐn)?shù)從小到大排列,然后刪除索引位置的元素
12.按照分?jǐn)?shù)刪除元素
zremrangebyscore score 28 99
他會(huì)刪除指定分?jǐn)?shù)范圍內(nèi)的元素
13.獲得元素排名
zrank score Tom
獲得按照分?jǐn)?shù)從小到大排列后,Tom的索引位置
反向排名
zrevrank score Tom
返回從大到小排列后,Tom的索引位置
評(píng)論
查看更多