Redis基础数据类型操作
key键总是以String类型来定义的,在项目中最好遵循相同的命名规范。system.user.{id}
只列取 部分,后续继续完善中。。。
1.String数据类型
-
格式:
key1: value1
key2:value2
… -
增加:
set key value
设置值
mset key1 value1 key2 value2 .....
批量设置值getset key value
返回旧的值,且设置新的值append key value
原有基础上字符串拼接 -
删除:
del key
删除键值对 -
修改:
incr key
给值增加1
incrby key 值
增加指定的值
decr key
给值减少1
decrby key 值
减少指定的值setrange key offset value
设置从某个位置开始的值,短则替换,长无所谓setnx key value
如果当前没有指定的key才设置对应的值。
msetnx key1 value1 key2 value2 ....
【key1、key2…这些key都同时不在时,才会设置】setex key sesconds value
设置带有效期的值,单位是秒。 -
查看:
get key
获取值
mget key ....
批量获取key的值getrange key start end
截取部分内容【包含开始和结尾索引处的内容】strlen key
查看值的长度
2.Hash数据类型
-
格式:
key1: {filed1 :vlue1,filed2:value2,…}
key2: {filed1 :vlue1,filed2:value2,…}
… -
增加:
hset key field value
设置值
hmset key field1 value1 .......
批量设置值 -
删除:
hdel key field
删除自定的字段值 -
修改:
hsetnx key field value
字段不存在时赋值,存在时啥也不做。
hincrby key field 值
增加指定的值 -
查看:
hget key field
获取值
hmget key field1 filed2 ....
批量获取值
hgetall key
获取包含filed 和value的所有值hkeys key
列出字段名列表
hvals key
列出字段值列表
hlen key
获取字段的数量hexists key filed
判断是否存在对应的字段
3.List数据类型
-
格式:
key1: value1,value2,value3,…
key2: value1,value2,value3,…
… -
增加:
lpush key value1......
向列表的左边添加元素
rpush key value1......
向列表的右边添加元素 -
删除:
lrem key count value
删除列表中指定的值。count表示删除的个数和方向(正数从左边开始,负数从右边开始)。 -
修改:
ltrim key start stop
只保留指定的片段
rpoplpush source dest
将source右边的元素移动到dest左边,source 和dest分别表示一个key
lset key index value
设置指定索引处的值
linsert key before|after pivot value
-
查看:
lpop key
左边元素出栈(移除左边的一个元素)
rpop key
右边元素出栈(移除右边的一个元素)llen key
列表元素的个数
lindex key index
获取指定索引处的元素
lrange key start end
截取列表的部分(包含开始和结束) 【获取列表的内容】
4.Set数据类型
无序,不可重复
-
格式:
key1: {value1 , value2 , …}
key2: {value1 , value2 , …}
… -
增加:
sadd key member......
向集合中添加成员 -
删除:
srem key value......
移除集合中的元素
spop key [count]
移除count个随机元素 -
修改:
smove source dest member
将元素从source集合移动到dest 集合 -
查看:
scard key
返回集合元素的个数
smembers key
列出集合中的所有成员sismember key value
判断指定的值是否属于指定的集合sranmember key [count]
随机从集合中取出count个元素sdiff key1 key.....
计算集合的差集
sinter key1 key....
计算集合的交集
sunion key key ....
计算集合的并集
5.Zset数据类型
有序集合,带score属性,不可重复
-
格式:
key1: {score1,value1,score2,value2,…}
key2: {score1,value1,score2,value2,…}
… -
增加:
zadd key score memeber .......
向集合中添加带分数的元素 -
删除:
-
修改:
-
查看:
zcard key
返回集合中的元素个数zrange key start stop [withscores]
获取指定排序(按分数从小到大)后start到stop位置的结果
zrevrange key start stop [withscores]
获取指定排序(按分数从大到小)后start到stop位置的结果zrangebyscore key min max [withscores] [limt offset count]
按分数获取zcount key min max
统计分数范围内元素的个数zrevrank key member
member根据分数(从大到小)的真实排名