redis基础(数据结构)

通用命令

keys:查看符合模版的所有key,不建议在生产环境设备上使用

del:删除(可批量)

exists:判断key是否存在

expire:给一个key设置有效期,有效期到期时该key会被自动删除

ttl:查看一个key的剩余有效期

通过help command可以查看一个命令的具体用法

String类型

set:添加或者修改已经存在的一个string类型键值对

get:根据key获取string类型的value

mset:批量添加多个String类型的键值对

mget:批量获取多个String类型的value值

incr:让一个整形的key自增

incrby:让一个整形的key自增并指定步长

incrbyfloat:让一个浮点类型的数字自增并指定步长

setnx:添加一个String类型的键值对,前提是这个key不存在,否则不执行

setex:添加一个string类型的键值对,并指定有效期

key的结构

redis的key允许有多个单词形成层级结构,多个单词之间用':'隔开

String存的值都是字符串,只是运算时会解析

Hash类型

hset key field value:添加或者修改hash类型key的field的值

hget key field:获取一个hash类型key的field值

hmset:批量添加或者修改hash类型key的field的值

mget:批量获取hash类型key的field值

hgetall:获取一个hash类型的key中的所有的field和value

hkeys:获取一个hash类型的key中的所有field

hvals:获取一个hash类型的key中的所有value

hincrby:让一个hash类型key的字段值自增并指定步长

hsetnx:添加一个hash类型的key的field值,前提是这个field不存在,否则不执行

List类型

lpush key element:向列表左侧插入一个或者多个元素

lpop key:移除并返回列表左侧的第一个元素,没有则返回nil

rpush key element:向列表右侧插入一个或者多个元素

rpop key:移除并返回列表右侧的第一个元素,没有则返回nil

lrange key star end:返回一段角标范围内的所有元素

blpop和brpop:与lpop和rpop类似,只不过没有元素时等待制定时间,而不是直接返回nil

set类型

支持交集,并集,差集

sadd key member:向set中添加一个或多个元素

srem key member:移除set中的指定元素

scard key:返回set中元素的个数

sismemeber key member:判断一个元素是否存在于set中

smembers:获取set中所有元素

sinter key1 key2 ...:求key1,key2的交集

sdiff key1 key2 ...::求key1,key2的差集

sunion key1 key2 ...:求key1,key2的并集

sortedset类型

经常用于排行榜功能

zadd key score member:添加一个或多个元素到sorted set,如果已经存在则更新其score值

zrem key member:删除sorted set中的一个指定元素

zscore key member:获取指定元素的score值

zrank key member:获取指定元素的排名

zcard key:获取元素个数

zcount key min max:统计score值在给定范围内的所有元素个数

zincrby key increment member:指定元素自增,步长为increment值

zrange key min max:按照score排序后,获取指定排名范围内的元素

zrangebyscore key min max:按照score排序后,获取指定score范围内的元素

zdiff、zinter、zunion:求差集、交集、并集

所有排名默认都是升序,如果要降序则在命令的z后面添加rev即可

相关推荐
草莓熊Lotso3 小时前
【C++ 基于微服务的即时通讯系统】etcd + brpc 从安装到服务注册发现全链路实战
网络·数据库·c++·redis·微服务·etcd
inrichtt8 小时前
第八课时:SPI总线揭秘:四线全双工通信的奥
c语言·数据结构·stm32·单片机·嵌入式硬件
Lethehong9 小时前
Oracle 加个字段,目标库就报错?KFS 用“先拆后组“打通异构 DDL
数据库·oracle
HPtiger9 小时前
数据结构——选择排序
数据结构·算法·排序算法
Web极客码9 小时前
锁定真正的磁盘卡顿:我用 OpenCode 配合 eBPF 诊断 NVMe 队列深度延迟与 I/O 写放大
数据库·oracle
cspttty9 小时前
2027用户研究求职准备:应用统计学如何补齐研究设计与业务表达
大数据·数据库
丑梨数据10 小时前
信创环境里跑文档工具:格式兼容与本地合规的几个坑
数据结构·人工智能·算法·决策树·排序算法
烂蜻蜓10 小时前
Pandas入门教程(四):Series数据结构——创建、索引与常用方法
数据结构·pandas
我不会起名字32210 小时前
Redis 突然只能读不能写:MISCONF 报错的 3 类触发条件与 4 步恢复
运维·redis·持久化·排查·misconf
roman_日积跬步-终至千里11 小时前
【数据Agent论文·查询与语义|05】Spider:为什么换一个数据库,模型就不会查了?
数据库·数据分析