Redis超強(qiáng)入門指南—數(shù)據(jù)類型操作命令(下)

有序集合類型 zset?(sorted?set)
redis 有序集合zset和集合set一樣也是string類型元素的集合,且不允許重復(fù)的成員。
不同的是?zset?的每個元素都會關(guān)聯(lián)一個分?jǐn)?shù)(分?jǐn)?shù)可以重復(fù)),redis?通過分?jǐn)?shù)來為集合中的成員進(jìn)行從小到大的排序。
視頻觀看戳??????

基本命令
1.?zadd
語法:zadd key score member [score member…]
作用:將一個或多個 member 元素及其 score 值加入到有序集合 key 中,如果 member 存在集合中,則更新值;score 可以是整數(shù)或浮點數(shù)
返回值:數(shù)字,新添加的元素個數(shù)
例 1:創(chuàng)建保存學(xué)生成績的集合

例 2:使用浮點數(shù)作為 score

2.?zrange
語法:zrange key start stop [WITHscoRES]
作用:查詢有序集合,指定區(qū)間的內(nèi)的元素。集合成員按 score 值從小到大來排序。start, stop 都是從 0 開始。0 是第一個元素,1 是第二個元素,依次類推。以-1 表示最后一個成員,-2 表示倒數(shù)第二個成員。WITHscoRES 選項讓 score 和value 一同返回。
返回值:自定區(qū)間的成員集合
例 1:顯示集合的全部元素,不顯示 score,不使用WITHscoRES

例 2:顯示集合全部元素,并使用 WITHscoRES

例 3:顯示第 0,1 二個成員

例 4:排序顯示浮點數(shù)的 score

3.?zrevrange
語法:zrevrange key start stop [WITHscoRES]
作用:返回有序集 key 中,指定區(qū)間內(nèi)的成員。其中成員的位置按 score 值遞減(從大到小)來排列。其它同 zrange 命令。
返回值:自定區(qū)間的成員集合
例 1:成績榜

4.?zrem
語法:zrem key member [member…]
作用:刪除有序集合 key 中的一個或多個成員,不存在的成員被忽略
返回值:被成功刪除的成員數(shù)量,不包括被忽略的成員。
例 1:刪除指定一個成員wangwu

5.?zcard
語法:zcard key
作用:獲取有序集 key 的元素成員的個數(shù)
返回值:key 存在返回集合元素的個數(shù), key 不存在,返回 0
例 1:查詢集合的元素個數(shù)

常用命令
1. zrangebyscore
語法:zrangebyscore key min max [WITHscoRES?] [LIMIT offset?count]
作用:獲取有序集 key 中,所有 score 值介于 min 和 max??之間(包括 min 和 max)的成員,有序成員是按遞增(從小到大)排序。
min?,max?是包括在內(nèi),使用符號( ?表示不包括。?min,?max?可以使用 -inf ,+inf?表示最小和最大?
limit 用來限制返回結(jié)果的數(shù)量和區(qū)間。
withscores 顯示 score 和 value
返回值:指定區(qū)間的集合數(shù)據(jù)
使用的準(zhǔn)備數(shù)據(jù)

例 1:顯示指定具體區(qū)間的數(shù)據(jù)

例 2:顯示指定具體區(qū)間的集合數(shù)據(jù),開區(qū)間(不包括 min,max)

例 3:顯示整個集合的所有數(shù)據(jù)

例 4:使用 limit
增加新的數(shù)據(jù):


顯示從第一個位置開始,取一個元素。

2. zrevrangebyscore
語法:zrevrangebyscore key max min [WITHscoRES?] [LIMIT offset?count]
作用:返回有序集key 中, score 值介于max 和 min 之間(默認(rèn)包括等于max 或 min )的所有的成員。有序集成員按score 值遞減(從大到小)的次序排列。其他同 zrangebyscore
例 1:查詢工資最高到 3000 之間的員工

3. zcount
語法:zcount key min max
作用:返回有序集 key 中,score 值在 min 和max 之間(默認(rèn)包括score 值等于min 或max )的成員的數(shù)量
例 1:求工資在 3000-5000 的員工數(shù)量

如果想更深入的學(xué)習(xí)Redis,奉上Redis視頻教程,視頻學(xué)習(xí)效果更佳,走過路過別忘素質(zhì)三連哦~~

