Redis存在集合类型:List(列表),Set(集合),SortSet(有序集合)
List
在redis中List是一个双向联表,既可以当队列使用,也可以当栈使用。
向集合中添加值(无需创建,添加时如果没有该键,自动创建) l/rpush key string ( l为left从链表左侧添加 r为右侧)
删除集合中两端的值 l/rpop key( l为删除左侧,r为删除右侧)
查看list中值的个数(若key不是列表则报错) len key
查看集合在范围内的值(相当于在范围内遍历列表) lrange key start end
截取范围内的值,其他删除 ltrim key start end
通过索引获取值 lindex key index
通过索引设置值 lset key index value
在某个值前后插入 linsert key before|after pivot value
复制
Set
Set是String的无序集合(用hash表实现的),不能存在相同的值,Set集合对与集合的交,差,并提供了很好的支持。
向集合中添加元素(无需创建,添加时如果没有该键,自动创建) sadd key value (元素重复报错)
移除集合中给定的value srem key value
查看集合中元素(无序) smembers key
将给定的元素从一个集合移到另一个集合中 smove source destination member
查看集合中的元素个数 scard key
给多个集合取交集 sinter key1 key2.....
给多个集合取交集并将结果存在destination中 sinterstore key1 key2 .....
给多个集合取并集 sunion key1 key2..
给多个集合取并集并将结果存在destination中 sunionstore key1 key2 .....
给多个集合取差集 sdiff key1 key2....
给多个集合取差集并将结果存在destination中 sdiffstore key1 key2....
查看一个元素是否在集合中 sismember key member
复制
Sorted Set
Sorted Set与set一样,不过是有序的,每个set中的值都会对应一个score的值,正是通过score来排序。
添加元素到集合,元素存在则更新socre zadd key score member
查看范围内的元素(从小到大) zrange key start end
同上,不过从大到小 zrevrange key start end
删除集合中指定的元素 zrem key member
查看集合中元素的个数 zcard key
返回值对应的socre zscore key member
给值增长指定幅度 zincrby key increment member
返回指定元素在集合中的排名(从小到大) zrank key member
同上,不过是从大到小排 zrevrank key member
复制
Hash
redis中hash特别适合存储对象,每个hash可以存储40对亿键值对
创建hash并添加key-value hmset key filed value.....
查看hash中所有键值对 hgetall key
查看hash中固定的键值对 hget key filed
通过key删除hash中的键值对 hdel key filed
查看hash中某一键值对是否存在 hexists key filed
查看hash中所有的键 hkeys key
查看hash中键的个数 hlen key
获取所有给定字段的值 hmget key filed .....
修改字段对应的值 hset key filed value
同时修改多个字段对应的值 hmset key filed value ....
获取hash表中所有值 hvals key
添加键值对 hsetnx key filed value
给指定的整数字段加上指定的增量 hincrby key filed increment
给指定的浮点数字段加上指定的增量 hincrbyfloat key filed increment
复制
文章转载自大学生IT学习之家,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。