目录
目录
Redis五种基本数据类型
1.String
1.1基本操作
添加/修改数据
set key value
获取数据
get key
删除数据
del key
添加/修改多个数据
mset key1 value1 key2 value2
获取多个数据
mget key1 key2
获取数据字符个数(字符串长度)
strlen key
追加信息到原始信息后部(如果原始信息存在则追加不存在则新建)
append key value
1.2扩展操作
设置数值数据增加指定范围的值
incr key
incrby key increment
incrbyfloat key increment
设置数值数据减少指定范围的值
decr key
decrby key increment
设置数据具有指定的生命周期
setex key seconds value --秒级
psetex key milliseconds value --毫秒级
2.hash
存储结构:一个存储空间保存多个键值对数据
Hash类型:底层使用哈希表结构实现数据存储
2.1基本操作
添加/修改数据
hset key field value
获取数据
hget key field
hgetall key
删除数据
hdel key field1
添加/修改多个数据
hmset key field1 value1 field2 value2
获取多个数据
hmget key field1 field2
获取哈希表中字段的数量
hlen key
获取哈希表中是否存在指定的字段
hexists key field
2.2扩展操作
获取哈希表中所有的字段名或字段值
hkeys key
hvals key
设置指定字段的数值数据增加指定范围的值
hincrby key field increment
hincrbyfloat key field increment
3.List类型
存储结构:一个存储空间保存多个数据,且通过数据可以体现进入顺序
List类型:保存多个数据,底层使用双向链表存储结构实现
3.1扩展操作
添加/修改数据
lpush key value1
rpush key value1
获取数据
lrange key start stop
lindex key index
llen key
获取并移除数据
lpop key
rpop key
3.2扩展操作
规定时间内获取并移除数据
blpop key1 timeout
brpop key1 timeout
移除指定数据
lrem key count value
3.2数据操作注意事项
list中保存的数据都是string类型的,数据总容量最多为2的32次方-1个元素(4294967295)
4.Set
存储大量数据,高效的内部存储机制,便于查询
Set类型:与hash存储结构完全相同,仅存储键,不存储值
4.1基础操作
添加数据
sadd key member1
获取全部数据
smembers key
删除数据
srem key member1
获取集合数据总量
scard key
判断集合中是否包含指定数据
sismember key member
4.2扩展操作
4.2.1操作随机数据
随机获取集合中指定数量的数据
srandmember key [count]
随机获取集合中的某个数据并将该数据移除集合
spop key
4.2.2Set数据交并差操作
求两个集合的交、并、差集
sinter key1 [key2]
sunion key1 [key2]
sdiff key1 [key2]
求两个集合的交、并、差集并存储到指定集合中
sinterstore destination key1 [key2]
sunionstore destination key1 [key2]
sdiffstore destination key1 [key2]
将指定数据从原始集合中移动到目标集合中
smove source destination member
5.sorted_set类型
存储需求:数据存储有利于数据的有效展示
存储结构:可以保存可排序的数据
sorted_set类型:在set的存储结构基础上添加可排序字段 增加score进行排序
5.1基础操作
添加数据
zadd key score1 member1
获取全部数据
zrange key start stop {WITHSCORES} 按照score正序排序
zrevrange key start stop [WITHSCORES] 按照score反序排序
删除数据
zrem key member
按条件获取数据
zrangebyscore key min max [WITHSCORES] [LIMIT]
zrevrangebyscore key min max [WITHSCORES]
获取集合数据总量
zcard key
zcount key min max
集合交、并操作
zinterstore destination numkeys key
zunionstore destination numkeys key
5.2扩展操作
获取数据对应的索引
zrank key member
zrevrank key member
score值获取与修改
zcore key member
zincrby key increment member
6.key通用操作
6.1基础操作
删除指定key
del key
获取key是否存在
exists key
获取key的类型
type key
key扩展操作-时效性控制
为指定key设置有效期
expire key secnds –秒级
pexpire key milliseconds –毫秒级
expireat key timestamp
pexpireat key milliseconds –毫秒级
获取key的有效时间
ttl key --如果key不存在返回-2,key存在返回-1,key设置有效时长则返回剩余有效时长
pttl key
key从时效性转换为永久性
persist key
6.2key扩展操作-查询模式
查询key
Keys pattern
查询模式规则
- 匹配任意数量的任意符号
?配合一个任意符号
[]匹配一个指定符号
Keys ??heima查询所有前面任意两个字符,以heima结尾
Keys u[st]er:1 查询所有以u开头,以er:1结尾,中间包含一个字母,s或t
key改名
rename key newkey –直接覆盖
renamenx key newkey –如果key不存在的话改名,存在的话改名失败
对所有key排序
sort
每天进步一点点,加油