Redis常用數(shù)據(jù)結(jié)構(gòu)包括string、link、set、order set、hash
一、string結(jié)構(gòu)及命令詳解
//ex為秒,px為毫秒,同是設(shè)置以px為準(zhǔn)
set key value [ex number | px number]=> 設(shè)置一個(gè)key-value鍵值對(duì)、可以指定生命周期
get key => 獲取鍵值對(duì)中的值
mset key value [key value ...] => 批量設(shè)置鍵值對(duì)
mget key [key ...] => 批量獲取鍵值對(duì)的值
setrange key offset value => 將字符串的偏轉(zhuǎn)字節(jié)更改成value
getrange key start end => 讀取字符串的部分值
getset key value => 讀取舊值,將新值覆蓋舊值
//數(shù)字型value的處理
incr key => 將值+1
decr key => 將值-1
incrby(decrby) key increment => 增加(減少)指定的值、在by后加float可以進(jìn)行浮點(diǎn)數(shù)操作
二、link結(jié)構(gòu)及命令詳解
lpush(rpush) key value => 將值插入鏈表頭部(尾部)
rpop(lpop) key => 返回并刪除鏈表尾部(頭部)元素
lrange key start stop => 返回鏈表中從start到stop的元素
lrem key count value => 刪除鏈表中count個(gè)value,count為正從頭部開始、為負(fù)從尾部開始
lindex key index => 返回指定index位置的值
llen key => 返回鏈表的長度
linsert key before|after pivot value => 查詢鏈表中pivot的值,并在之前(之后)插入一個(gè)值
rpoplpush source destination => 將source尾部的值彈出,插入到destination的頭部
三、set結(jié)構(gòu)及命令詳解
sadd key member [member ...] => 在集合中添加元素
smembers key => 返回集合中所有元素
srem key member [member ...] => 刪除集合中的元素
spop key [count] => 隨機(jī)彈出集合count個(gè)元素,默認(rèn)為一個(gè)
srandmember key [count] => 隨機(jī)獲取set中count個(gè)的元素,默認(rèn)一個(gè)
scard key => 返回集合中元素個(gè)數(shù)
smove source destination member => 將source中的member元素移動(dòng)到destination中去
sinter key [key ...] => 求集合之間的交集
sunion key [key ...] => 求集合之間的并集
sdiff key [key ...] => 求集合之間的差集
sdiff[inter][union]store destination key [key ...] => 獲取的同時(shí)放入destination集合中
四、order set結(jié)構(gòu)及命令詳解
//score為級(jí)別,member為值
zadd key [NX|XX] [CH] [INCR] score member [score member ...] => 向有序集合中添加元素
zrange key start stop [WITHSCORES] => 按權(quán)值大小讀取元素
zrevrange key start stop [WITHSCORES] => 按權(quán)值大小逆序讀取元素
zrangebyscore key min max [WITHSCORES] [LIMIT offset count] => 按權(quán)值取值
zrank(zrevrank) key membe => 獲取值在有序集合中的順序(逆序)位置
zrem key member [member ...] => 按值刪除元素
zremrangebyscore key min max => 按權(quán)值大小范圍刪除元素
zremrangebyrank key start stop => 按排名范圍刪除元素
zcard key => 返回有序集合中元素的個(gè)數(shù)
zcount key min max => 返回在范圍內(nèi)的元素的個(gè)數(shù)
//計(jì)算各個(gè)有序集的運(yùn)算;numkeys為集合個(gè)數(shù)、WEIGHTS 為加權(quán)數(shù)、AGGREGATE 后接運(yùn)算規(guī)則
zinterstore destination numkeys key [key ...] [WEIGHTS weight] [AGGREGATE SUM|MIN|MAX]