Redis功能篇之按浏览量排序或者时间戳排序的方法

Redis/缓存系统
524
0
0
2022-07-05
标签   Redis

不知道读者有没有看我写的 流量统计的那个篇文章,用的一个命令,很实用,但是文章多的话会影响

我们的访问性能,这里我们说下Redis的有序集合类型,这类型的优点我感觉是变化多端,可以更加符

我们在项目中需要用的的数据查询和功能显示。

有序集合类型和列表类型相似,不过列表相对的快一点,有序集合会慢一些,言归正传,我们说案例

有序集合可以在内部进行排列,就好比你存入ZADD KEY 10 a 20 b 30 c ,如果你想获取其中一个值的话:ZSCORE KEY b

Redis功能篇之按浏览量排序或者时间戳排序的方法

看到了吧,b 是 20 ,但我们想看所有该怎么办呢,不要急哈,接着往下看:

Redis功能篇之按浏览量排序或者时间戳排序的方法

0 是左边起第一位 -1 是右边最后一位也就是最后一个,我们需要注意下,就是我们现在看到的是按照

先后和数值的由小到大排序的,我们更改b的值,改成5 ,我们在看看打印出所有,有什么变化不。

Redis功能篇之按浏览量排序或者时间戳排序的方法

ZINCRBY这个命令可增加可减少,-10就是减10 10就是加10 是不是很简单啊哈

当我们对b进行修改值后,在ZRANGE KEY 0 -1 WITHSCORES 之后就会发现 b 在第一位了

在这里我区分下ZRANGE和ZREVRANGE 前者是升序(mysql的ASC类似)

后者ZREVRANGE是降序(mysql的DESC类似)

Redis功能篇之按浏览量排序或者时间戳排序的方法

还可以进行区间查询 ZREVRANGESCORE zadd 100 0(这个意思是数值100-0的区间值) WITHSCORES

是显示KEY => VALUE的对应值 LIMIT 0 3 这个就不用我说了吧,哈哈大家都懂得

然后给大家布置下作业,通过我讲解的这个有序结合类型,大家能做出来通过访问量来排序的文章列表吗,如果不能或者不太明白欢迎留言给书生哈。

如果您对本文有兴许请点击收藏和关注作者哈,书生会一直努力,一直走下去,把最实用和最简练

的技术分享给大家,不要忘记关注和收藏哈,谢谢啦..