redis 集合学习笔记

//无序集合 s 开头
sadd myset “hello”  向myset里面添加一个hello元素  相同的元素添加不成功
smembers myset  查看集合所有元素
srem myset “hello” 删除集合myset 里面的 hello元素
spop myset 随机弹出元素(我觉得这个不常用)

myset1(1,2)
myset2(2,3)
sdiff myset1 myset2 返回1,返回所有给点集合的第一个集合的差集
sdiffstore myset3 myset2 myset1 返回myset2 myset1 的差集,并且保存到myset3里面
sinter myset1 myset2 返回交集
sinterstore myset3 myset1 myset2 功能与sdiffstore 相似
sunion myset1 myset2 返回并集
sunionstore myset3 myset1 myset2 功能与sdiffstore 相似
smove myset1 myset2 “hello” 把myset1里面hello移动到myset2
scard myset 看集合里面的元素个数
sismember myset hello 判断hello是否myset的元素,存在返回1,否则返回0
srandmember myset 随机返回一个元素
//有序集合 z 开头
zadd myzset 1 “hello” 插入了key为1
zadd myzset 2 “hello” 如果再次插入相同的值,key会自动修改为2 ,返回0代表没有添加成功,只把key更新
zrange myset 0 -1  返回所有值   由小到大排序
zrange myset 0 -1 withscore 返回所有键值
zrevrange myset 0 -1 withscore 返回所有键值,降序排列
zrem myset hello 删除hello元素
zincrby myset 2 hello 对值为hello的key进行增加2  同样可以-2
zrank myset hello 返回key值
zrevrank myset four  先降序排序再找索引
zrangebyscore myset 2 4 withscores 返回 2 4 之间的元素
zcount myset  2 4 返回key为2-4元素个数
zcard myset 返回所有元素的个数
zremrangebyrank myset  1 3 删除myset 里面key为1-3的 所有元素  byrank(按索引来删除)
zremrangebyscore myset  1 3 删除myset 里面顺序为为1-3的 所有元素  byrank(顺序引来删除)

发表评论