1 string类型
字符串是Redis最基本的类型,是其他类型的基础。一个字符串类型允许保存的容量为512MB。
常用命令如下:
1.1 基本命令
keys pattern
:获取数据库保存的key列表exists key
:判断key是否存在del key
:删除key-valuetype key
:获取可以对应的value的数据类型set key value
:添加一个key-value项mset key value key value...
:同时设置多个键值get key
:获取key对应的value值mget key key...
:同时获取多个键值incr key
:自增value+1,并返回增加后的结果incr key 数值
:自增指定的数值incrbyfloat key 浮点数
:自增指定浮点数
decr key
:自建value-1decr key 数值
:自减指定的数值
append key value
:项键值尾部追加value,比如增加字符串内容。如不存在则创建新的key-valuestrlen key
:获取字符串的长度expire key seconds
:键值的过期时间,到期自动删除persist key
:取消过期时间
-
1.2 位操作命令
一个字节由8bit组成,Redis提供下面四个命令:
getbit key offset
:获取指定bit的数值setbit key offset value
:设置指定bit的数值bitcount key [start][end]
:获取value中bit位为1的个数bitop operation destkey key key...
:对多个字符串类型的value进行位操作,保存结果到destkey2 hash类型
hash也是一宗字典结构,其存储了字段field和字段值的映射,字段值只能是字符串。结构如下:
常用命令如下2.1 基本命令
hset key field value
hget key field
hmset key field value [field value]
hmget key field [field]
hgetall key
hexists key field
:判断字段是否存在hsetnx key field value
:字段不存在时赋值,存在什么也不做hincrby key field 数值
:自增字段值hdel key filed [field]
hkeys key
:获取字段名-
3 列表类型
列表类型可以存储一个有序的字符串列表(双向链表),常用操作是向列表两端添加元素,或获得列表的某一个片段。
借助列表类型,Redis可以作为队列使用。3.1 基本命令
lpush key value [value..]
:向列表左边增加元素rpush key value [value..]
:向列表右边增加元素lpop key
:从左边弹出元素rpop key
:从右边弹出元素brpop key seconds
:右边弹出元素,如果没有元素,阻塞等待,直到超时
llen key
:获取元素的个数lindex key index
:获得指定索引的元素值linsert key before|after pivot value
:从左到右查找值为pivot的元素,并在他2前面或后面插入新元素valuelset key index value
:设置指定索引的元素值lrange key start stop
:获取列表的某一部分,但并不删除列表内容lrem key count value
:删除列表中前count个值为value的元素- count = 0,删除全部值为value的元素
- count > 0,从左边开始删除
- count < 0,从右边开始删除
ltrim key start end
:删除指定范围外的所有元素rpoplpush source dest
:从source右边弹出一个元素,添加到dest的左边,并返回该值。(原子过程)4 集合类型
4.1 基本命令
sadd key member [member..]
:添加集合元素,不允许重复srem key member [member..]
:删除集合元素smembers key
:获取集合中所有元素sismember key member
:元素是否在集合中scard key
:获取集合中元素个数srandmember key [count]
:随机获取集合中元素- count > 0:随机获取count个不重复元素
- count < 0:随机获取count个元素,有可能重复
- count > 集合size:返回全部元素
-
4.2 集合运算
sdiff key [key..]
:差集运算sdiffstore dest key [key..]
:差集,并保存到dest
sinter key [key..]
:交集运算sinterstore dest key [key..]
:交集,保存到dest
sunion key [key..]
:并集运算zadd key score member [score member]
:添加元素和分数zincrby key 数值 member
:增加元素的分数,ascore key member
:获取元素的分数zrange key start stop [withscores]
:获得排名区域内的元素列表,从小到大排列zrevrange key start stop [withscores]
:获得排名区域内的元素列表,从大到小排列zrangebyscore key min max [withscores] [limit offset count]
:获取指定分数范围内的元素zcard key
:获取元素的个数zcount key min max
:获取指定分数范围内的元素个数zrem key member [member]
:删除元素zremrangebyrank key start stop
:删除排名范围内元素zremrangebyscore key min max
:删除分数范围内的元素
zrank key member
:获取元素的排名,从小到大排列zrevrank key member
:获取元素的排名,从大到小排列