「提效脚本 redis」 使用Lua批量删除key

在redis里面可以使用keys aa* 进行匹配所有的key,却没办法直接删除所有匹配的key。

所以可以使用lua脚本进行增强。

以删除 suggest* 开头的key为例。

shell 复制代码
eval  "local keys = redis.call('keys', 'suggest*')  for _, key in ipairs(keys) do  redis.call('del', key) end" 0

脚本分析:

lua 复制代码
-- 删除 Redis 中所有已有 'suggest' 前缀的键值对
local keys = redis.call('keys', 'suggest*')
for _, key in ipairs(keys) do
  redis.call('del', key)
end

这是 Redis 的 Lua 脚本语言,意思是:

  1. 使用 Redis 的 eval 命令执行该脚本。
  2. 获取所有以 'suggest' 开头的键名,赋值给 keys 变量。使用 Redis 的 keys 命令实现。
  3. 遍历 keys 变量中的每个键名 key,并执行 redis.call('del', key),即删除对应的键值对。
  4. 返回值 0 表示无需传递参数。

总体来说,这是一个用于删除 Redis 中所有已有 'suggest' 前缀的键值对的脚本。

相关推荐
倔强的石头_29 分钟前
关系数据库替换用金仓:数据迁移过程中的完整性与一致性风险
数据库
Elastic 中国社区官方博客35 分钟前
使用 Groq 与 Elasticsearch 进行智能查询
大数据·数据库·人工智能·elasticsearch·搜索引擎·ai·全文检索
My LQS1 小时前
使用 Redis Stack 向量索引构建大模型问答缓存系统
redis·缓存·ai
穿过锁扣的风1 小时前
一文搞懂 SQL 五大分类:DQL/DML/DDL/DCL/TCL
数据库·microsoft·oracle
l1t1 小时前
DeepSeek总结的SNKV — 无查询处理器的 SQLite 键值存储
数据库·sqlite·kvstore
洛豳枭薰1 小时前
MySQL 梳理
数据库·mysql
九.九1 小时前
CANN 算子生态的底层安全与驱动依赖:固件校验与算子安全边界的强化
大数据·数据库·安全
蓝帆傲亦1 小时前
代码革命!我用Claude Code 3个月完成1年工作量,这些实战经验全给你
jvm·数据库·oracle
亓才孓1 小时前
[JDBC]事务
java·开发语言·数据库
PD我是你的真爱粉1 小时前
FastAPI使用tortoiseORM
数据库·fastapi