Redis in .NET Core 入門:(5) Sorted SET

第1篇:http://www.javashuo.com/article/p-vsodremk-dt.htmlhtml

第2篇 String:http://www.javashuo.com/article/p-kjwucdnc-hs.htmlspa

第3篇 Hash:http://www.javashuo.com/article/p-awwjuogt-ep.html3d

第4篇 List和Set:http://www.javashuo.com/article/p-drkforde-hg.html視頻

本文介紹Redis的Sorted SET,可能比較無聊,大多內容來自文檔。htm

 

Sorted SET

Sorted Set有點像Set和Hash的結合體。blog

和Set同樣,它裏面的元素是惟一的,類型是String,因此它能夠理解爲就是一個Set。排序

可是Set裏面的元素是無序的,而Sorted Set裏面的元素都帶有一個浮點值,叫作分數(score),因此這一點和Hash有點像,由於每一個元素都映射到了一個值。element

Sorted Set是有序的,規則以下:文檔

  • 若是A.score > B.score,那麼A > B。
  • 若是A.score == B.score,那麼A和B的大小就經過比較字符串來決定了,而A和B的字符串是不會相等的,由於Sorted Set裏面的值都是惟一的。

 

ZADD

ZADD能夠添加元素到Sorted Set,就和Set的SADD命令差很少:字符串

能夠看到ZADD的格式是:zadd key score element。

 

ZRANGE,ZREVRANGE

ZRANGE默認按分數由低到高把Sorted Set的元素顯示出來:

 

想按分數要從高到低顯示,須要使用ZREVRANGE

 

也能夠一同把分數顯示出來,使用參數WITHSCORES

 

ZRANGEBYSCORE

ZRANGEBYSCORE能夠按範圍顯示Sorted Set,格式是zrangebyscore key 分數下限 分數上限:

能夠看到結果也包括了分數下限和分數上限這兩個邊。

 

ZREMRANGEBYSCORE

ZREMRANGEBYSCORE能夠按範圍移除元素:

該命令返回的是移除元素的個數。

其中-inf和inf分別表示負無窮和正無窮。

 

ZRANK

ZRANK命令能夠得到元素的排名:

注意,排名是從0開始的。

 

ZREVRANK

ZREVRANK這個正好和ZRANK相反,就不說了。

 

詞典分數

Sorted Set裏分數相同的元素是按照詞典分數(能夠理解爲比較字符串)進行排序的。

 

ZRANGEBYLEX

ZRANGEBYLEX能夠按詞典範圍展現Sorted Set:

能夠看到該命令把開頭字目爲C到E(不包括E)的元素都顯示了出來。

 

還有ZREVRANGEBYLEXZREMRANGEBYLEXZLEXCOUNT等針對詞典的命令,請自行探索。

 

在.NET Core 項目裏操練

ZADD,ZRANGE

 

ZREVRANGE,WITHSCORES

結果:

 

ZRANGEBYSCORE

結果:

 

ZREMRANGEBYSCORE

結果:

 

ZRANK

結果:

 

ZRANGEBYLEX

結果:

 

本系列的文字介紹就到這,接下來開始錄製視頻,依舊B站,謝謝。

相關文章
相關標籤/搜索