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站,谢谢。

相关文章
相关标签/搜索