本文主要是介绍Redis利用zset数据结构如何实现多字段排序,score的调整(finalScore = score*MAX_NAME_VALUE + getIntRepresentation(name) ),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1、原文:
2、使用sql很容易实现多字段的排序功能,比如:
select * from user order by score desc,name desc;
3、问题:用两个字段(score,name)排序。在redis中应该怎么做?
4、使用按分数排序的redis集合。你必须根据你的需要准备分数。
finalScore = score*MAX_NAME_VALUE + getIntRepresentation(name)
//MAX_NAME_VALUE是getIntRepresentation()方法返回的最大值
5、然后使用准备的分数
zadd myset finalScore value
6、使用myset
zrevrange myset 0 10
这篇关于Redis利用zset数据结构如何实现多字段排序,score的调整(finalScore = score*MAX_NAME_VALUE + getIntRepresentation(name) )的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!