一、Redis五大数据类型
1、String(字符串)
String是Redis最基本的类型,你可以理解为与Memcache一模一样的类型,一个key对应一个value。
String类型是二进制安全的。意思就是Redis的String可以包含任何数据,比如jpg图片或者序列化的对象。
String类型是Redis的基本类型,一个Redis字符串value最多可以是512M。
2、Hash(哈希,类似java中的Map)
Redis Hash是一个键值对集合。
Redis Hash是一个String类型的 field 和 value 的映射表,hash特别适合存储对象。类似Java里面的Map<String,Object>
3、List(列表)
Redis列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素到列表的头部(左边)或尾部(右边)。
它的底层实际是一个链表。
4、set(集合)
Redis的Set是String类型的无序集合。它是通过HashTable实现的。
5、Zset(sorted set:有序集合)
Redis zset 和 set 一样也是String 类型元素的集合,且不允许重复的成员。不同的是每个元素都会关联一个double类型的分数。
Redis正是通过分数来为集合中的成员进行从小到大的排序。zset的成员是唯一的,但分数却可以重复。
二、Redis常见数据类型操作命令
三、Redis键(Key)
1、常用命令
2、实例:
keys * #查看所有key
exists key的名字 #查看某个key是否存在,1表示存在,0表示不存在
move key db #将某个key移到db库中,当前库就没有了
expire key 秒钟 #为给定的key设置过期时间
ttl key #查看还有多少秒过期,-1表示永不过过期,-2表示已过期
type key #查看你的key是什么类型
四、Redis字符串(String)
1、常用
单值单value
2、案例
set/get/del/append/strlen #设值,获取值,删除值,追加,计算长度
Incr/decr/incrby/decrby,一定要是数字才能进行加减 #增,减,增加多少,减少多少
getrange:获取指定区间范围内的值,类似between......and的关系,从零到负一表示全部
setrange:设置指定区间范围内的值,格式是setrange key值 具体值
setex(set with expire) 键 秒值 真实值:设置带过期时间的key,动态设置
setnx(set if not exist):只有在key不在的时候设置key的值
mset:同时设置一个或多个key-value对
mget:获取所有(一个或多个)给定key的值
msetnx:同时设置一个或多个key-value对,当且仅当所有给定的key都不存在的的时
getset(先get再set):将给定的key的值设为value,并返回key的旧值(oldValue)