美文网首页
redis的基本命令和各数据结构的使用

redis的基本命令和各数据结构的使用

作者: 傻疯子 | 来源:发表于2021-12-18 22:42 被阅读0次

关于键key的操作

keys * 返回所有键,如果只需要返回部分的键可以使用scan 0 count 5
设置字符串key-value:set (key_name) (key_value),形如set sfz true
删除key-value:del (key_name) ,形如del sfz

此外还有一些可以对键进行的操作
exists (key_name) 检查键是否存在
rename (key_name) (new_key_name)修改键的名字
type (key_name) 返回键存储的内容
expire (key_name) (time)设置过期时间秒
pexpire (key_name) (time)设置过期时间毫秒
ttl (key_name)返回过期时间秒
pttl (key_name)返回过期时间毫秒
dump (key_name) 序列化的key值

字符串的操作

除了常用的get (key_name) 和set (key_name) (key_value)操作外,还有以下命令
mget (key_name) [key_name] ...可以一次返回指定的多个值
mset (key_name) (key_value) [(key_name) (key_value)]...可以一次设置多个键值
incr (key_name)给值增加1
decr (key_name)给值减1

hash的操作

列举下最常见的hash相关的操作
hset (key_name) (field) (value) [(field) (value)]...在一个键里面设置多个map
hget (key_name) (field) 获取指定键指定字段的值
hgetall (key_name) 获取指定键的所有字段和值
hdel (key_name) (field) 删除指定键的指定字段
hkeys (key_name) 返回当中所有字段
hvals (key_name) 返回当中所有值

list的操作

以下为list的相关操作,值通过从左或从右两边添加。
lpush (key_name) (value) [value] 从左边插入值
rpush (key_name) (value) [value] 从右边插入值
lpop (key_name) 从左边弹出值
rpop (key_name) 从右边弹出值
llen (key_name) 获取该列表长度
lrange (key_name) (start) (stop) 获取列表区间内的值,0到-1则是所有值
lset (key_name) (index) (value) 修改该列表指定下表的值

set的操作

以下为set的相关操作,set的值是唯一的
sadd (key_name) (value) [value] 添加元素到集合中
smembers (key_name)返回集合所有元素
srem (key_name) (value)删除集合中的指定元素
sismemer (key_name) (value)判断该元素是否在集合中
sdiff (key_name) (key_name) 获取第一个集合比第二个集合多的元素
sinter (key_name) (key_name) 获取第一个集合与第二个集合重复的元素
sunion (key_name) (key_name) 获取第一个集合与第二个集合所有的元素
scard (key_name)获取该集合的数量

sorted set的操作

是有序的set,所以为了排序,需要在添加元素时同时基于对应的分数
zadd (key_name) (score) (value) 添加元素
zscore (key_name) (value) 获取元素分数
zrange (key_name) (start) (stop) 获取排名区间的元素
zrevrange (key_name) (start) (stop) 获取逆序排名区间的元素
zincrby (key_name) (incre_score) (value) 给指定元素增加指定的分数
zcard (key_name) 获取该集合的元素数量
zrem (key_name) (value) 或者zrem (key_name) (start) (stop)

各个数据结构的使用场景简单说明

string可以记录session并放置过期时间,也可以利用其原子性作为计数使用
hash可以给一些id存放属性值
list可以放一些不用修改顺序放置的列表
set可以放一些唯一的列表,并且用到需要求交集、差集的地方
sorted set可以放一些带排名和权重的列表

相关文章

网友评论

      本文标题:redis的基本命令和各数据结构的使用

      本文链接:https://www.haomeiwen.com/subject/zxagfrtx.html