Redis 模糊查询删除操作
创建一条测试 数据 查询 (默认是 DB 0 )
创建:
set name xiaoming 查询: get name
1、模糊搜索查询 (redis 默认有16个DB , 0-15 )
Redis 模糊搜索 1、keys * 匹配数据库中所有 key 2、keys h?llo 匹配 hello , hallo 和 hxllo 等。 3、keys h*llo 匹配 hllo 和 heeello 等。 4、keys h[ae]llo 匹配 hallo 和 hello ,但不匹配 hillo;特殊符号用 \ 隔开。 redis> keys *o* 1) "four" 2) "two" 3) "one" redis> keys t?? 1) "two" redis> keys t[w]* 1) "two" redis> keys * # 匹配数据库内所有 key 1) "four" 2) "three" 3) "two" 4) "one"
redis-cli 进入默认是第一个DB 0 ; select 切换 DB
> select 2;
2、删除指定key :
# 删除所有以 user 开头的key 可以这样实现: # redis-cli keys "user*" 1) "user1" 2) "user2" # redis-cli keys "user*" | xargs redis-cli del (integer) 2 # 删除成功 # 删除当前数据库中的所有Key > flushdb # 删除所有数据库中的key > flushall
# 删除单个 key redis> SET name zhangsan OK redis> DEL name (integer) 1 # 删除一个不存在的 key redis> EXISTS lisi (integer) 0 redis> DEL phone # 失败,没有 key 被删除 (integer) 0 # 同时删除多个 key redis> SET name "redis" OK redis> SET type "key-value store" OK redis> SET website "redis.com" OK redis> DEL name type website (integer) 3
# 批量删除匹配通配符的key用到了Linux中的管道和xargs参数:
redis-cli keys "s*" | xargs redis-cli del
# 如果需要制定数据库,需要用到 -n 数据库编号 参数,下面是删除 2数据库中 s开头的键: redis-cli -n 2 keys "s*" | xargs redis-cli -n 2 del
redis-cli keys "*" | xargs redis-cli del
# 如果redis-cli没有设置成系统变量,需要指定redis-cli的完整路径
如:
/opt/redis/redis-cli keys "*" | xargs /opt/redis/redis-cli del
3、Redis Sortedset 数据查询
redis sortedset 数据查询: 172.16.12.36:6003> zrank qa:hall 103228953392713728 (integer) 10021 172.16.12.36:6003> ZCARD qa:hall (integer) 10022
TTL key : 以秒为单位,返回给定 key 的剩余生存时间(TTL, time to live)。
返回值: 当 key 不存在时,返回 -2 。 当 key 存在但没有设置剩余生存时间时,返回 -1 。 否则,以秒为单位,返回 key 的剩余生存时间。 在 Redis 2.8 以前,当 key 不存在,或者 key 没有设置剩余生存时间时,命令都返回 -1 。
查询检测 ttl 值:
# 不存在的 key redis> FLUSHDB OK redis> TTL key (integer) -2 # key 存在,但没有设置剩余生存时间 redis> SET key value OK redis> TTL key (integer) -1 # 有剩余生存时间的 key redis> EXPIRE key 10086 (integer) 1 redis> TTL key (integer) 10010
5、redis type key
TYPE key : 返回 key 所储存的值的类型。
返回值: none (key不存在) string (字符串) list (列表) set (集合) zset (有序集) hash (哈希表)
示例:
# 字符串 redis> SET weather "sunny" OK redis> TYPE weather string # 列表 redis> LPUSH book_list "programming in scala" (integer) 1 redis> TYPE book_list list # 集合 redis> SADD pat "dog" (integer) 1 redis> TYPE pat set
标签:
redis keys模糊查询
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架