Redis系列-set类型和zset类型
2013-11-01 20:48
621 查看
set类型
Set是集合,它是string类型的无序集合。set是通过hash table 实现的,添加、删除和查找的复杂度都是0(1)。
对集合我们可以取并集、交集、差集。
sadd
向名称为key的set中添加元素
sadd myset "hello"
smembers 查看集合
smembers
myset
srem 删除元素
srem myset
"one" 返回1 删除成功 返回0 删除失败
spop
随机返回并删除名称为key的set中的一个元素
spop
myset
sdiff
返回所有给定key与第一个key的差集
sdiff
myset1 myset2 (以前面一个为标准)
sdiffstore
返回所有给定key与第一个key的差集,并将结果存为另外一个key.
sdiffstore
myset3 myset1 myset2 # 将 myset1 myset2 的差集存到myset3里面(以myset1为基准)
sinter
返回给定key的交集
sinter
myset4 myset5
sinterstore
将交集存储到另外一个集合 sinterstore myset6 myset1 myset2 (与sdiffstore类似)
sunion
并集
sunion
myset1 myset2
sunionstore
取并集存到新的set
sunionstore
myset7 myset1 myset2 #返回插入的元素个数
smove
从第一个key对应的set中移除member并添加到第二个对应的set中
smove
myset2 myset7 three #成功返回1 失败返回0
scard
查看集合的个数 scard myset2
sismember
测试member是否是名称为key的set的元素
sismember
myset2 two 是返回1 不是返回0
srandmember
随机返回 (因为set无序)
srandmember
myset7
sorted
sets 类型
sortedset是set的一个升级版本,它在set的基础上增加了一个顺序属性,这一属性在添加修改元素的时候可以指定,
每次指定后,zset会自动重新按新的值调整顺序,可以理解为由两列的mysql,一列存value,一列存顺序。
其中key理解为zset的名字.
zadd
添加元素
zadd
myzset 1 "one"
zadd
myzset 2 "two"
zadd
myzset 3 "three"
zrange
myzset 0 -1 withscores
这里的0和-1代表的是索引
withscores 输出顺序号
zrem
删除名称为key的zset中的元素
zrem
myzset two
zincrby
以指定值来增加(减少)顺序 对数序号进行加减
如果在名称为key的zset中,已经存在元素member,则该元素的sroce增加increment,
否则向该集合添加元素,其score的值为incrnment
zincrby myzset 2 one
再比如 four这个元素是不存在的
zrank 返回名称为key的zset中的member元素的排名 (按score从小到大排序) 即下标
zrank myzset two
zrevrank
反转 按照score从大到小排名 zrevrank myzset two
zrevrange
逆序 降序排序
zrevrange
myzset 0 -1 withscores
zrangebyscore 返回下标在给定区间的元素
zrangebyscore
myzset 2 3 withscore
zcount
返回集合中score在给定区间中的数量
zcount
myzset 2 3
zcard
返回集合中所有元素的个数
zcard
myzset
zremrangebyrank删除集合中在给定区间的元素
按照下标删除
zremrangebyrank
myzset 1 2
zremrangebyscore删除集合中给定区间的元素
按照顺序删除
zremrangebyscore
myzset 1 2
相关文章推荐
- Redis入门
- Redis2.2.2源码学习——Server&Client链接的建立以及相关Event
- Redis2.6安装报错
- Storing hundreds of millions of simple key-value pairs in Redis
- PHP 利用redis 做统计缓存mysql的压力
- Redis系列- list类型
- centos 安装redis
- Redis系列-string类型和hash类型
- python对redis进行实时用户数统计
- python对redis进行实时用户数统计
- Redis2.2.2源码学习——Server&Client链接的建立以及相关Event
- Redis入门
- ubuntu系统下mysql.redis的数据文件设置
- 分析Redis架构设计
- Redis系列-初识redis、安装
- redis的简单事务
- redis安全性 添加访问密码
- ubuntu 安装新版本 redis
- redis 内存
- Jedis操作redis(转)