一、Redis的五大数据类型
String(字符串)
string是redis最基本的类型,可以理解为Memcached一样的类型,一个key对应一个value。
string类型是二进制安全的,意思是redis的string可以包含任何数据。比如ipg图片或者序列化的对象。
string类型是Redis最基本的数据结构,一个redis中字符串value最多可以是512M。
Hash(哈希,类似java里的Map)
Redis hash是一个键值对集合。
Redis hash是一个string类型的field和value的映射表,hash特别适合用于存储对象。
类似java里面的Map
List(列表)
Redis列表是简单的字符串列表,按照插入顺序排序。可以添加一个元素到列表的头部(左边)或者尾部(右边)。
它的底层是一个链表。
Set(集合)
Redis的Set是string类型的无序集合。它是通过HashTable实现的。
Zset(sorted set:有序集合)
Redis zset 和 set 一样也是string类型元素的集合,且不允许重复的成员。
不同的是每个元素都会关联一个double类型的分数。
redis正是通过分数来为集合中的成员进行从小到大的排序。zset的成员是唯一的,但分数(score)却可以重复。
哪里去获得redis常见数据类型操作命令: http://redisdoc.com/
二、Redis 键(key)
常用
案例
1 | keys * |
三、Redis字符串(String),单值单value
常用
案例
1 | set/get/del/append/strlen |
1 | append: 的使用: |
getrange:获取指定区间范围内的值,类似between……and的关系
- 从零到负一表示全部:
setrange设置指定区间范围内的值,格式是setrange key值 具体值
四、Redis列表(List),单值多value
常用
案例
1 | lpush/rpush/lrange |
通过索引获取列表中的元素 lindex key index
从left往right删除2个值等于v1的元素,返回的值为实际删除的数量
LREM list3 0 值,表示删除全部给定的值。
- ltrim:截取指定索引区间的元素,格式是ltrim list的key 起始索引 结束索引
a
移除列表的最后一个元素,并将该元素添加到另一个列表并返回:
Rpoplpush list2 list3
- Lset list3 2 c++ 通过索引设置列表的元素的值
- 在list某个已有值的前后再添加具体值
五、Redis集合(Set),单值多value
- 常用
s
案例
- sadd/smembers/sismember
scard,获取集合里面的元素个数
获取集合里面的元素个数
srem key value 删除集合中元素
srandmember key 某个整数(随机出几个数)
* 从set集合里面随机取出2个
* 如果超过最大数量就全部取出,
* 如果写的值是负数,比如-3 ,表示需要取出3个,但是可能会有重复值。
spop key 随机出栈
smove key1 key2 在key1里某个值 作用是将key1里的某个值赋给key2
数学集合类
差集:sdiff
在第一个set里面而不在后面任何一个set里面的项
交集:sinter
并集:sunion
六、Redis哈希(Hash) KV模式不变,但V是一个键值对
常用
KV模式不变,但V是一个键值对
hset/hget/hmset/hmget/hgetall/hdel
hlen

hexists key 在key里面的某个值的key
hkeys/hvals
hincrby/hincrbyfloat
hsetnx
不存在赋值,
七、Redis有序集合Zset(sorted set),在set基础上,加一个score值
在set基础上,加一个score值。之前set是k1 v1 v2 v3,现在zset是k1 score1 v1 score2 v2
常用
zadd/zrange. 新建/查找
zrangebyscore key 开始score 结束score 显示分数withscores, “(“ 表示小于
zrangebyscore zset1 (70 (90 withscores (“ 表示小于
zrangebyscore zset1 60 -inf withscores 大于等于60分的
zrangebyscore zset1 (60 -inf withscores 大于60分的
zrangebyscore zset1 (60 +inf withscores limit 0 2 下标位置limit在0到2
withscores
limit 作用是返回限制 limit 开始下标步 多少步
zrem key 某score下对应的value值,作用是删除元素,格式是zrem zset的key 项的值,项的值可以是多个 zrem key score某个对应值,可以是多个值
zcard/zcount key score区间/zrank key values值,作用是获得下标值/zscore key 对应值,获得分数
zcard :获取集合中元素个数
zcount :获取分数区间内元素个数,zcount key 开始分数区间 结束分数区间
zrank: 获取value在zset中的下标位置
zscore:按照值获得对应的分数
zrevrank key values值,作用是逆序获得下标值
正序、逆序获得下标索引值
zrevrange
zrevrangebyscore key 结束score 开始score
zrevrangebyscore zset1 90 60 withscores 分数是反着来的
If you like this blog or find it useful for you, you are welcome to comment on it. You are also welcome to share this blog, so that more people can participate in it. If the images used in the blog infringe your copyright, please contact the author to delete them. Thank you !