Redis数据结构(Sort-set)(游戏排名和微博热点话题排名上应用):
特点:可存储有序但不重复的数据,根据分数指定存储顺序

1 Sort-set和Set的区别:
(1)sort的每个成员都是以一个分数的形式在redis中存储的,redis通过分数对集合中的元素进行从小到大的排序。
(2)成员是唯一的,但是分数是可以重复的。
(3)删除增加,更新一个成员都是非常快速的。
(4)时间复杂度为集合中成员个数的一个对数
2 Sort-set中的成员在集合中的位置是有序的:

存储Sort-set常用命令:
(1)添加元素
zadd 列名 [分数 值]...
zadd mysort 80 张三 90 里斯 100 龙舞
注:如果分数已存在,会用新的分数替换原有的分数

(2)获得元素
zscore mysort 张三
查分数:zscore 列名 值
zscore mysort 张三
查数量:zcard 列名
zcard mysort
(3)删除元素
单删:zrem 列名 值...;范围删除:zremrangebyrank 列名 [begin,end]
zrem mysort 张三 里斯
(4)范围查询
升序查值:zrange 列名 [begin,end] <withscores>(两者可为正负数,负数则从反方向开始计数,正数从0开始,负数从-1开始)(withscores带分数,可选项)
zrange mysort 0 -1
zrange mysort 0 -1 withscores 由小到大排序

降序查值:zrevrange 列名 [begin,end] <withscores>(两者可为正负数,负数则从反方向开始计数,正数从0开始,负数从-1开始)(withscores带分数,可选项)
zrevrange mysort 0 -1
zrevrange mysort 0 -1 withscores 由大到小排序

排名范围删除
zremrangebyrank mysort 0 4
按照分数删除
zremrangebyscore mysort 80 100

(5)扩展名令
返回某个范围的成员,并按照由低到高排序
分数查值:zrangebyscore 列名 [begin,end] <withscores>
zrangebyscore mysort 0 100 withscores

分页查值:zrangebyscore 列名 [begin,end] <withscores limit [begin,end]>
zrangebyscore mysort 0 100 withscores limit 0 2

设置指定成员,增加的分数
zincrby mysort 3 里斯
查看下
zscore mysort 里斯

获取分数在某个之间的成员的个数
zcount mysort 80 90

使用场景
(1)如大型在线游戏积分排行榜
(2)构建索引数据

Redis数据结构(六)的更多相关文章

  1. Redis学习系列六ZSet(有序列表)及Redis数据结构的过期

    一.简介 ZSet可以说是Redis中最有趣的数据结构了,因为他兼具了Hash集合和Set的双重特性,也是用的最多的,保证了value值的唯一性的同时,,同时又保证了高性能,最主要的是还可以给每个Va ...

  2. 峰Redis学习(6)Redis 数据结构(sorted-set的操作)

    第六节:Redis 数据结构之sorted-set 类型 存储Sorted-Set Sorted-Set和Set的区别   Sorted-Set中的成员在集合中的位置是有序的   存储Sorted-s ...

  3. Redis 数据结构使用场景

    转自http://get.ftqq.com/523.get 一.redis 数据结构使用场景 原来看过 redisbook 这本书,对 redis 的基本功能都已经熟悉了,从上周开始看 redis 的 ...

  4. Redis数据结构

    Redis数据结构 Redis数据结构详解(一)   前言 Redis和Memcached最大的区别,Redis 除啦支持数据持久化之外,还支持更多的数据类型而不仅仅是简单key-value结构的数据 ...

  5. Redis数据结构底层知识总结

    Redis数据结构底层总结 本篇文章是基于作者黄建宏写的书Redis设计与实现而做的笔记 数据结构与对象 Redis中数据结构的底层实现包括以下对象: 对象 解释 简单动态字符串 字符串的底层实现 链 ...

  6. Redis 数据结构与内存管理策略(上)

    Redis 数据结构与内存管理策略(上) 标签: Redis Redis数据结构 Redis内存管理策略 Redis数据类型 Redis类型映射 Redis 数据类型特点与使用场景 String.Li ...

  7. Redis 数据结构与内存管理策略(下)

    Redis 数据结构与内存管理策略(下) 标签: Redis Redis数据结构 Redis内存管理策略 Redis数据类型 Redis类型映射 Redis 数据类型特点与使用场景 String.Li ...

  8. Redis数据结构之intset

    本文及后续文章,Redis版本均是v3.2.8 上篇文章<Redis数据结构之robj>,我们说到redis object数据结构,其有5中数据类型:OBJ_STRING,OBJ_LIST ...

  9. Redis数据结构之robj

    本文及后续文章,Redis版本均是v3.2.8 我们知道一个database内的这个映射关系是用一个dict来维护的.dict的key固定用一种数据结构来表达,这这数据结构就是动态字符串sds.而va ...

随机推荐

  1. Java多线程编程核心技术,第二章,对象和变量并发访问

    1,方法内部变量是线程安全的 2,实例变量非线程安全 3,synchronized是锁对象不是锁方法(锁对象是可以访问非synchronized方法,不可访问同个和其他synchronized方法 4 ...

  2. Spring Cloud 入门 之 Eureka 篇(一)

    原文地址:Spring Cloud 入门 之 Eureka 篇(一) 博客地址:http://www.extlight.com 一.前言 Spring Cloud 是一系列框架的有序集合.它利用 Sp ...

  3. 64位windows 2003和windows xp

    msdn windows2003 64位简体中文企业版R2 sp2(cn_win_srv_2003_r2_enterprise_x64_with_sp2_vl) ed2k://|file|cn_win ...

  4. redhat 防火墙禁止允许的IP链接指定的端口

    编辑:iptables -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp -s 192.168.4.3 --dport 80 -j A ...

  5. emacs之配置php

    php-setting.el (require 'php-mode) 以后丰富

  6. [教程]Ubuntu下完整配置自动壁纸切换

    来源:http://www.linuxidc.com/Linux/2016-09/135350.html 更原始的来源就不去找了,如果有找到的同学可以回复我我到时改过来www 来源的教程是有效的,但是 ...

  7. PAT 甲级 1011 World Cup Betting (20)(20 分)(水题,不用特别在乎精度)

    1011 World Cup Betting (20)(20 分) With the 2010 FIFA World Cup running, football fans the world over ...

  8. HDU 2201 熊猫阿波的故事

    熊猫阿波的故事 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Sub ...

  9. mysql-11元数据

    我的mysql是用docker配置的,服务器状态和服务器配置变量都未设置,报错正常.

  10. MVC confirm提示

    //审核不同意 $("#shbtg").click(function () { $.messager.confirm("提示", "不通过则会被删除, ...