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