redis的opsForZset整理(隊列)

redis的opsForZset整理(隊列)

1.有訓隊列的添加

Boolean add(K key, V value, double score);

key就是這個有序隊列的key摆寄,

value表示一個你需要排序附帶的值嘿期,比如你可以放一個用戶的ID或者其他的高每。

Score表示一個分數(shù)嗡午,所有的排序都是基于這個score〈战祝可以正序排列忆蚀,也可以倒敘排列。

正序和倒敘的獲取方式:
Set< V > range(K key, long start, long end); 正序

Set reverseRange(K key, long start, long end);倒敘

獲取隊列的方法脓杉,start表示起始位置的index,從0開始简逮。index表示end的位置球散,-1表示獲取全部

opsForZSet.range("key",0,-1),表示獲取key隊列的所有元素买决。
對應的方法還有幾個

Set< TypedTuple< V >> rangeWithScores(K key, long start, long end);

Set< TypedTuple< V >> reverseRangeWithScores(K key, long start, long end);

這兩個方法跟上面的方法差不多沛婴,只是返回的時候回帶上score,有時候業(yè)務(wù)需要輸出這個score督赤,比如排行榜的分數(shù),你就可以用2個這個泻蚊。

2.隊列中數(shù)據(jù)的條件查詢

Set< V > rangeByScore(K key, double min, double max);

Set< V > reverseRangeByScore(K key, double min, double max);

應用:可用于模擬交易符合價格的訂單查詢躲舌,然后進行成交處理

3.隊列中相同中去重

Long unionAndStore(K key, K otherKey, K destKey);

Long unionAndStore(K key, Collection< K > otherKeys, K destKey);

這兩個方法挺有意思的,意思不僅僅是去重性雄,而且會把重復的數(shù)據(jù)score進行相加没卸,返回值是這個集合的長度

先解釋第一個,key秒旋,otherKey這兩個key的有序隊列進行相加约计,如果兩個隊列中存在相同的value,就將value的score相加迁筛,最終將最后的組合結(jié)果放到destKey中煤蚌。

第二個方法則是多了一個集合參數(shù),多個集合可以用同一個方法,節(jié)省代碼尉桩,舉個簡單的例子:

Long unionAndStore = opsForZSet.unionAndStore("a", Arrays.asList("b","c"), "d");

Long intersectAndStore(K key, K otherKey, K destKey);

Long intersectAndStore(K key, Collection< K > otherKeys, K destKey);

這倆方法剛好和上面2個方法相反筒占,這個是交集。把交集的結(jié)果放到destKey中

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末蜘犁,一起剝皮案震驚了整個濱河市翰苫,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌这橙,老刑警劉巖奏窑,帶你破解...
    沈念sama閱讀 219,110評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異屈扎,居然都是意外死亡埃唯,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,443評論 3 395
  • 文/潘曉璐 我一進店門助隧,熙熙樓的掌柜王于貴愁眉苦臉地迎上來筑凫,“玉大人,你說我怎么就攤上這事并村∥∈担” “怎么了?”我有些...
    開封第一講書人閱讀 165,474評論 0 356
  • 文/不壞的土叔 我叫張陵哩牍,是天一觀的道長棚潦。 經(jīng)常有香客問我,道長膝昆,這世上最難降的妖魔是什么丸边? 我笑而不...
    開封第一講書人閱讀 58,881評論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮荚孵,結(jié)果婚禮上妹窖,老公的妹妹穿的比我還像新娘。我一直安慰自己收叶,他們只是感情好骄呼,可當我...
    茶點故事閱讀 67,902評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著判没,像睡著了一般蜓萄。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上澄峰,一...
    開封第一講書人閱讀 51,698評論 1 305
  • 那天嫉沽,我揣著相機與錄音,去河邊找鬼俏竞。 笑死绸硕,一個胖子當著我的面吹牛堂竟,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播臣咖,決...
    沈念sama閱讀 40,418評論 3 419
  • 文/蒼蘭香墨 我猛地睜開眼跃捣,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了夺蛇?” 一聲冷哼從身側(cè)響起疚漆,我...
    開封第一講書人閱讀 39,332評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎刁赦,沒想到半個月后娶聘,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,796評論 1 316
  • 正文 獨居荒郊野嶺守林人離奇死亡甚脉,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,968評論 3 337
  • 正文 我和宋清朗相戀三年丸升,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片牺氨。...
    茶點故事閱讀 40,110評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡狡耻,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出猴凹,到底是詐尸還是另有隱情夷狰,我是刑警寧澤,帶...
    沈念sama閱讀 35,792評論 5 346
  • 正文 年R本政府宣布郊霎,位于F島的核電站沼头,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏书劝。R本人自食惡果不足惜进倍,卻給世界環(huán)境...
    茶點故事閱讀 41,455評論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望购对。 院中可真熱鬧猾昆,春花似錦、人聲如沸骡苞。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,003評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽烙如。三九已至,卻和暖如春毅否,著一層夾襖步出監(jiān)牢的瞬間亚铁,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,130評論 1 272
  • 我被黑心中介騙來泰國打工螟加, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留徘溢,地道東北人吞琐。 一個月前我還...
    沈念sama閱讀 48,348評論 3 373
  • 正文 我出身青樓,卻偏偏與公主長得像然爆,于是被迫代替她去往敵國和親站粟。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 45,047評論 2 355

推薦閱讀更多精彩內(nèi)容