成人性生交大片免费看视频r_亚洲综合极品香蕉久久网_在线视频免费观看一区_亚洲精品亚洲人成人网在线播放_国产精品毛片av_久久久久国产精品www_亚洲国产一区二区三区在线播_日韩一区二区三区四区区区_亚洲精品国产无套在线观_国产免费www

主頁(yè) > 知識(shí)庫(kù) > redis基本類型和使用方法詳解

redis基本類型和使用方法詳解

熱門標(biāo)簽:南京手機(jī)外呼系統(tǒng)廠家 400電話辦理的口碑 廊坊外呼系統(tǒng)在哪買 地圖標(biāo)注工廠入駐 高碑店市地圖標(biāo)注app 一個(gè)地圖標(biāo)注多少錢 b2b外呼系統(tǒng) 臺(tái)灣電銷 四川穩(wěn)定外呼系統(tǒng)軟件

redis存儲(chǔ)數(shù)據(jù)的基本類型有:string(字符串類型)、hash(散列類型)、list(列表類型)、set(集合類型)、zset(有序集合類型)。

依次做一些練習(xí)。redis命令不區(qū)分大小寫。

key相關(guān)操作

127.0.0.1:6379> set key hello ## 設(shè)置
OK
127.0.0.1:6379> set key1 world
OK
127.0.0.1:6379> keys ke* ## keys查詢鍵名
1) "key1"
2) "key"
127.0.0.1:6379> del key1 ## 刪除鍵值對(duì)
(integer) 1
127.0.0.1:6379> exists key ##查詢鍵名是否存在
(integer) 1 ##存在返回1
127.0.0.1:6379> exists key1
(integer) 0 ##不存在返回0
127.0.0.1:6379> type key ##查詢鍵值的類型 
string

字符串類型

127.0.0.1:6379> exists num 
(integer) 0
127.0.0.1:6379> incr num ##incr一個(gè)不存在的值,先創(chuàng)建新值,賦值為0,再自增1.院子操作。 對(duì)應(yīng)的是decr
(integer) 1
127.0.0.1:6379> set key hello
OK
127.0.0.1:6379> incr key ##無(wú)法對(duì)string自增
(error) ERR value is not an integer or out of range
127.0.0.1:6379> incrby num 3 ##increby增加指定的數(shù)值,對(duì)應(yīng)的是decrby
(integer) 4
127.0.0.1:6379> incrbyfloat num 0.7 ##增加浮點(diǎn)數(shù)
"4.7"
127.0.0.1:6379> append key " world!" ##append追加字符
(integer) 12
127.0.0.1:6379> get key
"hello world!"
127.0.0.1:6379> strlen key ##strlen字符串長(zhǎng)度
(integer) 12
127.0.0.1:6379> mget key num ## mget批量獲取鍵值
1) "hello world!"
2) "4.7"
127.0.0.1:6379> mset key hi num 5.5 ##mset批量設(shè)置
OK
127.0.0.1:6379> mget key num
1) "hi"
2) "5.5"
127.0.0.1:6379> set foo bar 
OK
127.0.0.1:6379> getbit foo 1 ##getbit獲取某一位二進(jìn)制數(shù)值
(integer) 1
127.0.0.1:6379> setbit foo 22 0 ##設(shè)置修改位值
(integer) 1
127.0.0.1:6379> get foo ##修改成功
"bap"
127.0.0.1:6379> set foo bar
OK
127.0.0.1:6379> set foo1 aar
OK
127.0.0.1:6379> bitop or result foo foo1 ##bitop位操作
(integer) 3
127.0.0.1:6379> get result
"car"

GETBIT key offset

SETBIT key offset value

BITCOUNT key [start] [end] 獲取鍵值中值為1的二進(jìn)制位個(gè)數(shù),start和end表示字節(jié)位置

BITOP operation destkey key [key...] 對(duì)多個(gè)鍵值進(jìn)行位運(yùn)算,并將結(jié)果存儲(chǔ)在destkey對(duì)應(yīng)的鍵值中。支持的操作:AND、 OR、 XOR、 NOT。

GETSET key newValue 原子操作,設(shè)置新值,返回原來(lái)的值。如果原值不存在,返回nil。

SETEX key seconds value 設(shè)置鍵值對(duì)的失效時(shí)間是seconds秒。

SETNX key value put if absent, or do nothing。

SETRANGE key offset value 從index等于offset位置起,替換length(value)個(gè)字符,替換為value。如果offset超出范圍,則中間補(bǔ)充0x00。

GETRANGE key start end 獲取指定返回的字符串,閉區(qū)間。end超過(guò)長(zhǎng)度,則取到字符串末尾。

MGET key [key ... ]

MSET key value [key value ... ]

MSETNX key value [key value ... ] 原子操作。如果在這一批Keys中有任意一個(gè)Key已經(jīng)存在了,那么該操作將全部回滾,即所有的修改都不會(huì)生效。1表示全部設(shè)置成功;0表示都沒(méi)有設(shè)置。

127.0.0.1:6379> getset foo hi ##設(shè)置新值,返回舊值nil
(nil)
127.0.0.1:6379> get foo
"hi"
127.0.0.1:6379> setex foo 2 hello ##設(shè)置鍵值對(duì),2秒失效
OK
127.0.0.1:6379> get foo ##沒(méi)失效時(shí),返回值
"hello"
127.0.0.1:6379> get foo ##失效之后,返回nil
(nil)
127.0.0.1:6379> set foo hello
OK
127.0.0.1:6379> setrange foo 1 appy ##替換index=1之后的字符串
(integer) 5
127.0.0.1:6379> get foo
"happy"
127.0.0.1:6379> setrange foo 1 ee
(integer) 5 ##返回修改后的長(zhǎng)度
127.0.0.1:6379> get foo ##替換兩個(gè)字符
"heepy"
127.0.0.1:6379> setrange foo 8 day
(integer) 11  
127.0.0.1:6379> get foo
"heepy\x00\x00\x00day"
127.0.0.1:6379> get bar
(nil)
127.0.0.1:6379> setrange bar 2 ee ##bar的值為nil,補(bǔ)充兩個(gè)0x00
(integer) 4
127.0.0.1:6379> get bar
"\x00\x00ee"
127.0.0.1:6379> set key1 hello
OK
127.0.0.1:6379> msetnx key1 hi key2 hi ##key2不存在,不修改
(integer) 0
127.0.0.1:6379> mget key1 key2 ## key2依然為nil
1) "hello"
2) (nil)

hash

HSET key field value

HGET key field

HMSET key field value [field value ... ]

HMGET key field [field ...]

HGETALL key

HEXISTS key field

HSETNX key field value 字段不存在時(shí)賦值。 與HSET類型,區(qū)別在于,如果字段存在,HSETNX不執(zhí)行任何操作。

HINCRBY key filed increment 如果key、field不存在,自動(dòng)創(chuàng)建,鍵值為0,再增值。

HDEL key field [field...] 這是刪除的是key:field,不能直接刪除key。如果要?jiǎng)h除key,使用DEL命令。

HEYS key 只獲取字段名

HVALS key 只獲取字段值

HLEN key 獲得字段數(shù)量

127.0.0.1:6379> HMSET g1class1 xiaoming 001 xiaohong 002 tom 003 hanmeimei 004
OK
127.0.0.1:6379> HGETALL g1class1 
1) "xiaoming"
2) "001"
3) "xiaohong"
4) "002"
5) "tom"
6) "003"
7) "hanmeimei"
8) "004"
127.0.0.1:6379> HKEYS g1class1
1) "xiaoming"
2) "xiaohong"
3) "tom"
4) "hanmeimei"
127.0.0.1:6379> HLEN g1class1
(integer) 4
127.0.0.1:6379> HGET g1class1 xiaohong
"002"
127.0.0.1:6379> HSET g1class1 lilei 005 ##het新值時(shí),返回1
(integer) 1
127.0.0.1:6379> hset g1class1 xiaohong 007 ## hset更新值時(shí),返回0
(integer) 0
127.0.0.1:6379> hsetnx g1class1 tom 008 ##已存在的值,不操作
(integer) 0
127.0.0.1:6379> hget g1class1 tom ##已存在的值,更新不生效,還是003
"003"
127.0.0.1:6379> hdel g1class1 ##不能直接刪除key
(error) ERR wrong number of arguments for 'hdel' command
127.0.0.1:6379> DEL g1class1 ##使用DEL刪除key
(integer) 1
127.0.0.1:6379> hgetall g1class1 ##查詢?yōu)榭?
(empty list or set)

用途

  1. 用來(lái)存儲(chǔ)分級(jí)數(shù)據(jù)。外部key作為prefix,是第一級(jí)key,hash中的key作為第二級(jí)key使用。
  2. 存儲(chǔ)含有多個(gè)屬性的對(duì)象,如一篇博客的各種屬性:標(biāo)題,標(biāo)簽,分類等。修改某個(gè)屬性,不用操作整個(gè)博客內(nèi)容。

list

redis列表類型內(nèi)部是使用雙向列表實(shí)現(xiàn)的,所以可以向/從兩端添加/刪除元素。

LPUSH key value [value ...] 從左側(cè)添加元素,如果key不存在,初始化一個(gè)空列表,再添加。返回插入后,鏈表的個(gè)數(shù)。

LPUSHX key value 僅當(dāng)指定的Key存在時(shí),才在列表的左邊插入Value,否則將不會(huì)有任何操作發(fā)生。返回插入后,鏈表的個(gè)數(shù)。

RPUSH key value [value ...] 從右側(cè)添加元素

RPUSHX key value 僅當(dāng)指定的Key存在時(shí),才在列表的右邊插入Value,否則將不會(huì)有任何操作發(fā)生。返回插入后,鏈表的個(gè)數(shù)。

LPOP key 從兩端彈出元素

RPOP key

LLEN key 獲取列表中元素個(gè)數(shù)

LRANGE key start end 獲取列表片段,左邊在前,右邊在后。起始索引為0,最右邊元素索引可以為-1,右邊第二個(gè)索引可以為-2,以此類推。。。索引從左到右,如果start比end靠右,則返回空列表。end值可以大于長(zhǎng)度范圍。

LREM key count value 從左邊(count > 0)開始,刪除前count個(gè)值為value的元素;從右邊(count 0)開始,刪除前|count|個(gè)值為value的元素 ; 刪除所有值為value的元素(count = 0)。返回實(shí)際刪除元素的個(gè)數(shù)。

LINDEX key index 獲取指定索引的元素值

LSET key index value 設(shè)置指定索引的元素值

LTRIM key start end 刪除指定索引范圍之外的所有元素。start和end的規(guī)則與lrange的相同。

LINSERT key BEFORE|AFTER pivot value 從左到右查找pivot,將value插在其前面(BEFORE)或者后面(AFTER)。 返回插入后,元素總個(gè)數(shù)。

RPOPLPUSH source destination 刪除source最右邊的元素,插入到destination最左邊。返回操作的元素。

127.0.0.1:6379> lpush num 1 2 ## 先push 1,再push 2
(integer) 2
127.0.0.1:6379> rpush num 3 4 ##先push 3,再push 4
(integer) 4
127.0.0.1:6379> lrange num 0 -1 ##從0開始,顯示4個(gè)元素
1) "2"
2) "1"
3) "3"
4) "4"
127.0.0.1:6379> llen num
(integer) 4
127.0.0.1:6379> lrange num -1 -2 ##start比end靠右,返回空列表
(empty list or set)
127.0.0.1:6379> lrange num -2 -1 ##從右邊第二到右邊第一
1) "3"
2) "4"
127.0.0.1:6379> lpush num 3 4 3 
(integer) 7
127.0.0.1:6379> lrange num 0 -1
1) "3"
2) "4"
3) "3"
4) "2"
5) "1"
6) "3"
7) "4"
127.0.0.1:6379> lrem num 2 3
(integer) 2  ## 一共刪除了兩個(gè)
127.0.0.1:6379> lrange num 0 -1
1) "4"
2) "2"
3) "1"
4) "3"
5) "4"
127.0.0.1:6379> 
127.0.0.1:6379> lrem num 0 4 ##刪除所有值為4元素
(integer) 2    ## 一共刪除了兩個(gè)
127.0.0.1:6379> lrange num 0 -1
1) "2"
2) "1"
3) "3"
127.0.0.1:6379> lrem num 2 3
(integer) 1 ##只刪除了一個(gè)元素
127.0.0.1:6379> lrange num 0 -1
1) "2"
2) "1"
127.0.0.1:6379> lpush num 1 3
(integer) 4
127.0.0.1:6379> linsert num BEFORE 1 4 ##將4插入左邊第一個(gè)1的前面
(integer) 5   ##插入后,一共有5個(gè)元素
127.0.0.1:6379> lrange num 0 -1
1) "3"
2) "4"
3) "1"
4) "2"
5) "1"
127.0.0.1:6379> rpoplpush num num1 ##轉(zhuǎn)移一個(gè)元素
"1"
127.0.0.1:6379> lrange num1 0 -1
1) "1"
127.0.0.1:6379> rpoplpush num num1
"2"
127.0.0.1:6379> lrange num1 0 -1
1) "2"
2) "1"
127.0.0.1:6379> lrange num 0 -1 ##num中轉(zhuǎn)移走了2個(gè)元素
1) "3"
2) "4"
3) "1"
127.0.0.1:6379> lpushx num 5 ##鍵名num存在,push成功
(integer) 4
127.0.0.1:6379> lrange num2 0 -1 
(empty list or set)
127.0.0.1:6379> lpushx num2 1 ##鍵名num2不存在,push失敗
(integer) 0
127.0.0.1:6379> lrange num2 0 -1
(empty list or set)

用途

  1. 列表頁(yè)

set

redis的set使用值為空的散列表(hash table)實(shí)現(xiàn)。

SADD key member [member ...] 加入set中不存在的元素;返回成功加入的值的個(gè)數(shù)

SREM key member [member ... ] 刪除set中存在的元素;返回成功刪除的個(gè)數(shù)

SPOP key 隨機(jī)選取一個(gè)元素,彈出并返回。如果key不存在,返回nil。

SMEMBERS key 獲取所有元素

SISMEMBER key member 判斷元素是否在集合中,存在返回1;key或者member不存在,返回0。

SCARD key 獲取元素個(gè)數(shù)

SDIFF key1 [key2 ... ] 集合求差集,key1中存在,key2中不存在的

SINTER key [key ... ] 集合求交集

SUNION key [key ... ] 集合求并集

SDIFFSTORE destination key1 [key2 ... ] 集合求差集,并存入destination中。

SINTERSTORE destination key [key ... ] 集合求交集,并存入destination中。

SUNIONSTORE destination key [key ... ] 集合求并集,并存入destination中。

SRANDMEMBER key [count] 隨機(jī)選取count個(gè)元素,不帶參數(shù)count時(shí),選取一個(gè)。count=0,返回空列表;count > 0,選擇min(count, scard)個(gè)數(shù)據(jù),且不重復(fù),最多返回所有元素; count 0 選擇|count|個(gè)元素,有可能重復(fù)。

SMOVE source destination member 原子性的將參數(shù)中的成員從source鍵移入到destination鍵所關(guān)聯(lián)的Set中。因此在某一時(shí)刻,該成員或者出現(xiàn)在source中,或者出現(xiàn)在destination中。如果該成員在source中并不存在,該命令將不會(huì)再執(zhí)行任何操作并返回0,否則,該成員將從source移入到destination。如果此時(shí)該成員已經(jīng)在destination中存在,那么該命令僅是將該成員從source中移出。如果和Key關(guān)聯(lián)的Value不是Set,將返回相關(guān)的錯(cuò)誤信息。返回1表示正常移動(dòng),0表示source中并不包含參數(shù)成員。

127.0.0.1:6379> sadd set1 a b ##添加兩個(gè)不存在的元素
(integer) 2
127.0.0.1:6379> sadd set1 a c ##添加成功一個(gè)元素c
(integer) 1
127.0.0.1:6379> smembers set1 ##獲取所有元素
1) "c"
2) "b"
3) "a"
127.0.0.1:6379> srem set1 d b ##刪除成功一個(gè)元素
(integer) 1
127.0.0.1:6379> smembers set1
1) "c"
2) "a"
127.0.0.1:6379> sismember set1 a 
(integer) 1
127.0.0.1:6379> sadd set1 b
(integer) 1
127.0.0.1:6379> sadd set2 a d e 
(integer) 3
127.0.0.1:6379> sadd set3 c h j 
(integer) 3
127.0.0.1:6379> sdiff set1 set2 set3 ##求差集,在set1中,同時(shí)不在set2,set3中的元素
1) "b"
127.0.0.1:6379> scard set1
(integer) 3
127.0.0.1:6379> sdiffstore set4 set1 set2 set3
(integer) 1
127.0.0.1:6379> smembers set4
1) "b"
127.0.0.1:6379> srandmember set1 0
(empty list or set)
127.0.0.1:6379> srandmember set1 1
1) "c"
127.0.0.1:6379> srandmember set1 2
1) "a"
2) "b"
127.0.0.1:6379> srandmember set1 5 ##返回min(5, 3)個(gè)元素,且不重復(fù)
1) "c"
2) "a"
3) "b"
127.0.0.1:6379> srandmember set1 -5 ## 返回5個(gè)元素,可能重復(fù)
1) "a"
2) "b"
3) "c"
4) "c"
5) "c"
127.0.0.1:6379> spop set1
"c"
127.0.0.1:6379> smembers set1
1) "b"
2) "a"
127.0.0.1:6379> smembers set2
1) "d"
2) "a"
3) "e"
127.0.0.1:6379> smove set2 set1 c ##source中不含移動(dòng)的元素,不操作
(integer) 0
127.0.0.1:6379> smove set2 set1 e ##移動(dòng)一個(gè)元素到另一個(gè)集合
(integer) 1
127.0.0.1:6379> smembers set2
1) "d"
2) "a"
127.0.0.1:6379> smembers set1
1) "b"
2) "a"
3) "e"

用途

  1. 唯一性數(shù)據(jù)集合,如某用戶訪問(wèn)了哪些店鋪等。
  2. 集合相關(guān)場(chǎng)景。每個(gè)店鋪的訪問(wèn)用戶是一個(gè)set,查找同時(shí)訪問(wèn)多個(gè)店鋪的用戶群,查找訪問(wèn)一類店鋪的用戶群等。

sorted set

有序集合為每一個(gè)元素關(guān)聯(lián)一個(gè)分?jǐn)?shù),并按照分?jǐn)?shù)進(jìn)行排序。 雖然集合中的每個(gè)元素都是不相同的,但是它們的分?jǐn)?shù)卻可以相同。

ZADD key score member [score member ... ] 添加新元素,如果元素已經(jīng)存在,則更新分?jǐn)?shù)。score支持整型和雙精度浮點(diǎn)型。返回新添加的元素的個(gè)數(shù)(更新分?jǐn)?shù)的不算)。inf和-inf分別表示正無(wú)窮和負(fù)無(wú)窮。

ZINCRBY key increment member 增加一個(gè)元素的分?jǐn)?shù),increment可以是負(fù)數(shù)。

ZSCORE key member 查詢?cè)氐姆謹(jǐn)?shù)

ZCARD key 獲取集合中元素的個(gè)數(shù)

ZCOUNT key min max 指定分?jǐn)?shù)范圍內(nèi)元素的個(gè)數(shù),支持開閉區(qū)間。

ZRANGE key start end [WITHSCORES] 按照分?jǐn)?shù)從小到大排序,獲取排名在某個(gè)范圍的元素列表,分?jǐn)?shù)可選。閉區(qū)間,end可為負(fù)數(shù),與lrange參數(shù)要求一致。

ZREVRANGE key start end [WITHSCORES] 按照分?jǐn)?shù)從大到小排序。

ZRANGEBYSCORE key min max [WITHSCORES] [LIMIT offset count ] 按分?jǐn)?shù)從小到大順序,返回分?jǐn)?shù)在閉區(qū)間[min,max]的元素??梢灾付ㄩ_區(qū)間,在min前面加上"(",則表示(min, max]。支持inf和-inf。 offset和count指,在獲得的元素列表的基礎(chǔ)上,向后偏移offset個(gè)元素,并且只獲取前count個(gè)元素。

ZREVRANGEBYSCORE key max min [WITHSCORES] [LIMIT offset count ] 按分?jǐn)?shù)從大到小順序,返回分?jǐn)?shù)在閉區(qū)間[min,max]的元素。注意max和min的參數(shù)位置。

ZREM key member [member ... ] 刪除一個(gè)或者多個(gè)元素

ZREMRANGEBYRANK key start end 按照范圍排名刪除元素,閉區(qū)間。索引從0開始。

ZREMRANGEBYSCORE key min max 按照分?jǐn)?shù)排名,刪除分?jǐn)?shù)在[min,max]的元素,支持開區(qū)間。

ZRANK key member 按分?jǐn)?shù)從小到大排序,獲取元素member的排名,分?jǐn)?shù)最小的排名是0

ZREVRANK key member 按分?jǐn)?shù)從大到小排序,獲取元素member的排名,分?jǐn)?shù)最大的排名是0

ZINTERSTORE destination numkeys key [key ... ] [WEIGHTS weight [weight ... ]] [AGGREGATE SUM|MIN|MAX] 計(jì)算numkeys個(gè)有序集合的交集,存儲(chǔ)在有序集合destination里面,返回destination的元素個(gè)數(shù)。

WEIGHTS參數(shù)設(shè)置每個(gè)集合的權(quán)重,每個(gè)集合在參與計(jì)算時(shí),元素的分?jǐn)?shù)會(huì)被乘上該集合的權(quán)重。

AGGREGATE表示destination中元素分?jǐn)?shù)的計(jì)算方式:

AGGREGATE為SUM(默認(rèn)值)時(shí),則destination中元素的分?jǐn)?shù),是每個(gè)參與計(jì)算的集合中該元素分?jǐn)?shù)的和。

AGGREGATE為MAX時(shí),則destination中元素的分?jǐn)?shù),是每個(gè)參與計(jì)算的集合中該元素分?jǐn)?shù)的最大值。

AGGREGATE為MIN時(shí),則destination中元素的分?jǐn)?shù),是每個(gè)參與計(jì)算的集合中該元素分?jǐn)?shù)的最小值。

ZUNIONSTORE destination numkeys key [key ... ] [WEIGHTS weight [weight ... ]] [AGGREGATE SUM|MIN|MAX] 與上面類似。

127.0.0.1:6379> zadd zset1 10 sh 40 bj ##添加2個(gè)元素
(integer) 2
127.0.0.1:6379> zadd zset1 20 sh 50 hz 80 cd ##更新1個(gè),添加2個(gè)
(integer) 2
127.0.0.1:6379> zscore zset1 sh ##獲取sh的分?jǐn)?shù),已更新為20
"20"
127.0.0.1:6379> zrange zset1 1 -1 ##從第二個(gè)元素開始的所有元素
1) "bj"
2) "hz"
3) "cd"
127.0.0.1:6379> zrange zset1 0 -1 withscores ##獲取全部元素
1) "sh"
2) "20"
3) "bj"
4) "40"
5) "hz"
6) "50"
7) "cd"
8) "80"
127.0.0.1:6379> zadd zset1 inf zy ##添加正無(wú)窮
(integer) 1
127.0.0.1:6379> zrangebyscore zset1 (50 inf withscores ## 分?jǐn)?shù)大于50的元素
1) "cd"
2) "80"
3) "zy"
4) "inf"
127.0.0.1:6379> zrangebyscore zset1 50 inf withscores limit 1 2 
## 分?jǐn)?shù)大于等于50的元素,從第二個(gè)開始,取2個(gè)
1) "cd"
2) "80"
3) "zy"
4) "inf"
127.0.0.1:6379> zincrby zset1 5 hz ## 給元素hz加5分
"55" 
127.0.0.1:6379> zrangebyscore zset1 (50 inf ## 添加成功
1) "hz"
2) "cd"
3) "zy"
127.0.0.1:6379> zrange zset1 0 -1 WITHSCORES ##查詢所有元素
 1) "sh"
 2) "20"
 3) "bj"
 4) "40"
 5) "hz"
 6) "55"
 7) "cd"
 8) "80"
 9) "zy"
10) "inf"
127.0.0.1:6379> zcount zset1 0 inf ##獲取元素個(gè)數(shù)
(integer) 5
127.0.0.1:6379> zcount zset1 (55 inf ##大于55元素個(gè)數(shù)
(integer) 2
127.0.0.1:6379> zrem zset1 zy ##刪除zy
(integer) 1
127.0.0.1:6379> zrange zset1 0 -1 ## 剩下四個(gè)
1) "sh"
2) "bj"
3) "hz"
4) "cd"
127.0.0.1:6379> zremrangebyrank zset1 1 2 ## 按照排名,刪除第2名到第3名
(integer) 2
127.0.0.1:6379> zrange zset1 0 -1 ## 只剩下2個(gè)
1) "sh"
2) "cd"
127.0.0.1:6379> zadd zs1 1 a 2 b 
(integer) 2
127.0.0.1:6379> zadd zs2 10 a 20 b
(integer) 2
## zs1和zs2取交集,zs1的權(quán)重為1,zs2的權(quán)重為0.5,所以a的結(jié)果分?jǐn)?shù)是1+10*0.5=6
127.0.0.1:6379> zinterstore zs3 2 zs1 zs2 WEIGHTS 1 0.5 AGGREGATE sum
(integer) 2
127.0.0.1:6379> zrange zs3 0 -1 withscores
1) "a"
2) "6"
3) "b"
4) "12"

用途

  • 排序的場(chǎng)景。如按照博客訪問(wèn)量排序文章列表。key是用戶id,set中的數(shù)據(jù)是文章id,每個(gè)文章id關(guān)聯(lián)一個(gè)score(訪問(wèn)量)。

與列表的比較

  • 都可以獲取某一范圍的元素
  • 列表類型通過(guò)鏈表實(shí)現(xiàn),獲取兩端數(shù)據(jù)速度快,元素增多后,訪問(wèn)中間數(shù)據(jù)速度較慢。所以適合“新鮮事”和“日志”一類的場(chǎng)景。
  • 有序集合是通過(guò)散列表和跳躍表實(shí)現(xiàn)的,所以讀取位于中間部分的數(shù)據(jù)的速度也很快。時(shí)間復(fù)雜度O(log(N))。
  • 列表不能簡(jiǎn)單的調(diào)整某個(gè)元素的位置,有序集合可以。(修改元素的分?jǐn)?shù))

更多關(guān)于redis基本類型和使用方法請(qǐng)點(diǎn)擊下面的相關(guān)鏈接

您可能感興趣的文章:
  • C#使用Redis的基本操作
  • 在c#中使用servicestackredis操作redis的實(shí)例代碼
  • Redis安裝及基本數(shù)據(jù)類型
  • c#操作Redis的5種基本類型匯總

標(biāo)簽:泰州 拉薩 伊春 河源 南寧 定州 甘南 畢節(jié)

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《redis基本類型和使用方法詳解》,本文關(guān)鍵詞  redis,基本,類型,和,使用方法,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《redis基本類型和使用方法詳解》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于redis基本類型和使用方法詳解的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    偷窥自拍亚洲色图精选| 美女胸又www又黄的网站| 中文字幕在线网站| 日韩在线免费高清视频| 超碰在线免费| 亚洲天堂在线播放| 国产精品都在这里| 日韩精品久久久久久福利| 欧美激情一区二区三区不卡| 成人爱爱电影网址| 欧美性受xxxxxx黑人xyx性爽| yourporn久久国产精品| eeuss国产一区二区三区四区| 中文字幕va一区二区三区| 国产区在线观看成人精品| 一区二区欧美精品| 日韩精品免费观看| 精品精品欲导航| 亚洲精品一区二区三区精华液| 亚洲视频专区在线| 免费国产黄线在线观看视频| 成人妇女免费播放久久久| 99视频精品在线| 亚洲十八**毛片| 国产亚洲女人久久久久毛片| 久草资源在线观看| 成人免费黄色大片| 欧美国产日韩在线观看成人| 看片网址国产福利av中文字幕| 国产亚洲欧美另类一区二区三区| 色噜噜狠狠一区二区三区果冻| 成人线上播放| 天天看天天操| 欧美一级视频| 欧美在线视频精品| 亲爱的老师6电影韩剧| 美女日批在线观看| 在线观看18视频网站| 成人免费三级在线| 91视频久色| 日本怡春院一区二区| 国产精品视频一区二区免费不卡| 成人精品毛片| 在线视频一区二区三区四区| 麻豆成人在线播放| av二区在线| 国产91精品久久久久久久网曝门| 国产 日韩 欧美| 羞羞网站在线观看入口免费| 精品国产美女a久久9999| 亚洲综合自拍| 美女免费久久| 欧亚在线中文字幕免费| 一区二区久久久久| 成人自拍视频在线观看| 性欧美videos高清hd4k| 色噜噜狠狠狠综合曰曰曰88av| 亚洲欧洲高清在线| 亚洲人在线观看视频| 一二三四国产精品| 乱一区二区av| 成人精品在线观看| 国产老女人乱淫免费| 操操操干干干| 亚洲图片小说在线| 日日夜夜操操操| av综合在线观看| 久久精品国产v日韩v亚洲| 给我免费播放日韩视频| 国产最新精品精品你懂的| 亚洲黄色视屏| 中文无码日韩欧| 亚洲精品麻豆| 苍井空浴缸大战猛男120分钟| 欧美一级免费在线观看| 51国偷自产一区二区三区| 国产91|九色| 91九色porn在线资源| 精品人在线二区三区| 午夜精品美女久久久久av福利| 精品日韩成人av| 日韩中文视频免费在线观看| 成人爱爱电影网址| 亚洲精品久久久久久久久久久久| 久久夜色精品亚洲| www.国产视频| 国产精品白浆流出视频| 91理论片午午论夜理片久久| 日本美女xxx| a级片在线播放| 成人影视亚洲图片在线| 日本一区精品久久久久影院| 美女福利视频导航| 日韩电影大全免费观看2023年上| 少妇av一区二区| 亚洲国产一二三精品无码| 久久九九热re6这里有精品| 最新国产精品拍自在线播放| 偷偷要91色婷婷| 日本午夜视频| 国产精品视频一区在线观看| wwwwww.色| 欧美一级片免费观看| 日韩**中文字幕毛片| 欧美伊久线香蕉线新在线| 久久综合久久综合久久综合| 在线观看视频二区| 奇米一区二区三区av| 最新中文乱码字字幕在线| 国产精品水嫩水嫩| 在线观看中文字幕| 在线看女人毛片| 在线人成日本视频| 精品视频在线免费观看| 中文字幕在线国产精品| 韩国日本一区二区三区| 色又黄又爽网站www久久| 久久精品色欧美aⅴ一区二区| 国产欧美一区二区精品仙草咪| 97久久视频| 丰满少妇一区二区三区| 天天干天天操天天爽| 91精品视频免费在线观看| 不卡一卡二卡三乱码免费网站| 亚洲国产成人精品一区二区| 日韩成人一区| 欧美成人精品一区二区男人看| 亚洲超碰精品一区二区| 久久免费播放视频| 亚洲美女免费精品视频在线观看| 91精品办公室少妇高潮对白| caoporn超碰国产公开| 日本动漫理论片在线观看网站| 91午夜在线播放| 久久免费成人精品视频| 久久国产中文字幕| 精品久久久久久久久久ntr影视| 国产91在线亚洲| 国产欧美高清| caoliu在线| 欧美一区二区三区图| 欧美做爰啪啪xxxⅹ性| 日本japanese极品少妇| 精品亚洲第一| 嫩草伊人久久精品少妇av杨幂| 国产人伦精品一区二区| 亚洲小说图片视频| 欧美日韩成人影院| 能直接看的av| 中文字幕一区久久| 高清免费观看在线| 日韩av成人| 欧美久久一区| 国产精品久久色| 一区两区小视频| 俺去啦俺在线观看| 亚洲图片小说视频| 黄色成人在线网站| 国产97在线观看| 免费观看一级欧美片| 欧美日韩免费精品| 日韩成人午夜| 视频区 图片区 小说区| www.美色吧.com| 欧美精品www| 悠悠资源av网站| 欧美综合在线观看| 依依成人综合视频| 97av在线视频免费播放| 国产精品一久久香蕉国产线看观看| 国产一区导航| 欧美日韩mv| 欧美精品videos性欧美| 夜夜操天天操亚洲| 亚洲wwww| 91精品国产麻豆国产在线观看| 午夜先锋成人动漫在线| 亚洲18在线| 午夜精品福利视频网站| 亚洲天堂视频在线观看| 欧美综合国产精品久久丁香| 乱子伦在线视频| 91九色露脸| 欧美三级理论片| 日韩欧美视频一区二区三区四区| 欧美成人视屏| 成人一区福利| 美国做受三级的视频播放| 欧美性受xxxx狂喷水| 成人在线播放免费观看| 午夜a成v人精品| 九九九伊在线综合永久| 亚洲欧美日韩国产精品| 第一av在线| 青青视频免费在线观看| 免费观看国产成人| 91精品午夜视频| 牛夜精品久久久久久久99黑人| 欧美性久久久| 国产精品一区牛牛影视| 未满十八勿进黄网站一区不卡| 少妇精品视频一区二区| 草草视频在线一区二区| 91精品国产一区二区三区香蕉| 高清精品一区二区三区一区| 黄频免费在线观看| 国产精品一区二区在线免费观看| 日韩中文一区二区三区| 国产精品99免视看9| 欧美成人猛片aaaaaaa| 永久91嫩草亚洲精品人人| 中文天堂网在线www| 国产第一页在线| 成人国产一区二区| 色爱av美腿丝袜综合粉嫩av| 亚洲成人中文字幕| 无码h肉动漫在线观看| 中文字幕在线免费观看视频| 色综合久久久久久久久五月| 天堂中文在线免费观看| 欧美日韩高清一区二区| 午夜免费看毛片| 亚洲一区一卡| 精品国产av无码一区二区三区| 欧美一级免费看| 1024成人| 99热播在线观看| 午夜精品久久久久久久久| 中文字幕欧美在线观看| 久久久久免费视频| 国产真人真事毛片| 国产拍欧美日韩视频二区| 国产精品日韩一区二区| 色小说视频一区| 三级视频在线观看| 国产精品久久久久久久99| 天堂中文av在线| 亚洲一级二级片| 国产精品尤物福利片在线观看| 一级毛片aaaaaa免费看| 国产无遮挡aaa片爽爽| 大黄网站在线观看| 国产精品jk白丝蜜臀av小说| www.狠狠插| 开心激情综合| 亚洲成人手机在线| 亚洲乱码中文字幕| 国产精品99免视看9| 99久9在线视频| 国产一二三在线观看| 夜夜嗨aⅴ免费视频| 亚洲综合在线一区二区| 在线观看日韩欧美| 久草在线在线精品观看| 一级特黄毛片| 中文字幕不卡三区视频| 精品二区在线观看| 99在线视频播放| 欧美精品一区二区久久久| 日本1区2区| 久草免费资源| 欧美啪啪小视频| 天天操夜夜欢| 亚洲人亚洲人色久| 久久国产精品免费精品3p| 国产人妖在线播放| 亚洲一区二区在线播放相泽| 午夜男人视频在线观看| 国产欧美日韩电影| 18啪啪污污免费网站| www污污网站在线看| 无码人妻一区二区三区一| www.好吊操| 国产成人精品自线拍| 91在线品视觉盛宴免费| 久久国产精品区| 精品国产av无码| www.青青青| 日批免费观看视频| 日韩免费一区二区三区| 性日韩欧美在线视频| 亚洲第一网站免费视频| 欧美日韩国产一区二区三区| 欧美三级中文字幕在线观看| 亚洲欧美精品aaaaaa片| 成年人av网站| 男生女生差差差的视频在线观看| 中国一级片在线观看| 成人av网站在线观看免费| 亚洲熟女乱色一区二区三区| 99热这里只有精品99| 五月天激情婷婷| 9l亚洲国产成人精品一区二三| 91综合久久一区二区| 97精品国产97久久久久久春色| 日韩欧美三级在线| 性生活视频网址| 一区二区三区不卡在线观看| 人妻无码视频一区二区三区| 日韩国产欧美亚洲| 亚洲熟妇av一区二区三区漫画| 色鬼7777久久| 久久亚洲精品中文字幕| 成人精品一区二区| 中文字幕在线视频一区| 亚洲综合激情视频| 99久久久精品免费观看国产| 成人激情视屏| 欧美一区影院| 国产欧美精品一区二区| 亚洲国产www| 天天操天天干天天做| 久久综合色综合88| 日韩精品视频一区二区三区| 日本丰满www色| 五月婷婷综合激情| 精品久久在线| 国产精品视频精品| 污污视频在线观看网站| 人人妻人人爽人人澡人人精品| 欧美精品一区二区三区在线播放| 中国一级大黄大黄大色毛片| 激情亚洲一区二区三区四区| 亚洲综合一区二区不卡| 亚洲欧美一区二区三区久久| 免费看的av网站| 欧美巨大黑人极品精男| 精品无线一线二线三线|