news 2026/5/12 17:31:09

Redis--模糊查询--方法实例

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Redis--模糊查询--方法实例

原文网址:Redis–模糊查询–方法/实例_IT利刃出鞘的博客-CSDN博客

简介

说明

本文介绍Redis模糊查询的方法。

官网网址

https://redis.io/commands/keys/

https://redis.io/commands/scan/

Redis模糊查询键的方法

Redis提供了两种模糊查询键的方法:KEYS , SCAN。推荐用SCAN,下边会介绍。

模糊查询的通配符

KEYS和SCAN都支持glob通配符中的三个:*,,[]:

  • *:通配任意多个字符
  • :通配单个字符
  • []:通配括号内的某一个字符

示例

  • hllo
    • 匹配 hello, hallo and hxllo
  • h*llo
    • 匹配 hllo、heeeello
  • h[ae]llo
    • 匹配 hello、hallo
    • 不匹配 hillo
  • h[^e]llo
    • 匹配 hallo、hbllo…
    • 不匹配 hello
  • h[a-b]llo 匹配 hallo and hbllo

KEYS

说明

KEYS指令会一次性查出所有满足条件的key(没有 offset、limit 参数)。keys 算法是遍历算法,复杂度是 O(n)。

数据量大时会有问题:redis 是单线程的,操作都是原子的,如果实例中有千万级以上的 key,这个指令就会导致 Redis 服务卡顿,所有读写 Redis 的其它的指令都会被延后甚至会超时报错,可能会引起缓存雪崩甚至数据库宕机。

指令格式

KEYS pattern

pattern即key的正则表达式。

示例

先写入一些数据:

192.168.xxx.21:6379[2]> set hello 1 OK 192.168.xxx.21:6379[2]> set word 1 OK 192.168.xxx.21:6379[2]> set hellp 1 OK 192.168.xxx.21:6379[2]> set ahellog 1 OK 192.168.xxx.21:6379[2]> set hellog 1 OK

查询:

192.168.xxx.21:6379[2]> keys * 1) "hello" 2) "hellog" 3) "hellp" 4) "word" 5) "ahellog" 192.168.xxx.21:6379[2]> keys *hell* 1) "hello" 2) "hellog" 3) "hellp" 4) "ahellog" 192.168.xxx.21:6379[2]> keys hell* 1) "hello" 2) "hellog" 3) "hellp" //知道前面的一些字母,忘记了最后一个字母 192.168.xxx.21:6379[2]> keys hell? 1) "hello" 2) "hellp" //知道前面的一些字母,忘记了最后两个个字母 192.168.xxx.21:6379[2]> keys hell?? 1) "hellog" //知道前面四个字母,最后一个字母有可能是p t y 其中的一个 192.168.xxx.21:6379[2]> keys hell[pty] 1) "hellp" 192.168.xxx.21:6379[2]>

SCAN

上边是文章的部分内容,为便于维护,全文已转移到此网址:Redis-模糊查询-实例 - 自学精灵

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/23 18:03:23

Redis主从配置

1. 主从配置主从配置:在多个redis实例建立起主从关系,当主redis中的数据发生变化,从redis中的数据也会同步变化。通过主从配置可以实现redis数据的备份(从redis就是对主redis的备份),保证数据的安全性&…

作者头像 李华
网站建设 2026/5/6 7:13:21

Redis6.2.6下载和安装

简介 Redis 是一种开源(BSD 许可)、内存中数据结构存储,用作数据库、缓存和消息代理。Redis 提供了数据结构,例如字符串、散列、列表、集合、带有范围查询的排序集合、位图、超级日志、地理空间索引和流。Redis 内置复制、Lua 脚…

作者头像 李华
网站建设 2026/5/10 8:31:47

AI智能实体侦测服务部署教程:3步完成RaNER模型快速上手

AI智能实体侦测服务部署教程:3步完成RaNER模型快速上手 1. 引言 1.1 学习目标 本文将带你从零开始,在3分钟内完成 RaNER 中文命名实体识别(NER)服务的部署与使用。无论你是 NLP 初学者还是希望快速集成实体抽取功能的开发者&am…

作者头像 李华
网站建设 2026/5/3 4:52:50

redis 使用

文章目录 补充说明语法选项参数实例 连接服务端添加数据查询数据删除数据 补充说明 yum 安装的redis.conf 在/etc/redis/redis.conf语法 redis-cli (选项) (参数)选项 -a 输入密码 -n 选择数据库 若无此参数默认选中0数据库参数 set 添加数据 keys 用于查询 此参数后…

作者头像 李华
网站建设 2026/5/9 6:47:24

一文说清STM32CubeMX安装步骤在工控中的应用

从零开始玩转STM32工控开发:CubeMX安装与实战全解析 你有没有遇到过这样的场景?手头一个工业控制器项目,要接多个传感器、跑Modbus通信、还要联网上传数据。结果刚打开Keil,还没写一行业务逻辑,就卡在了时钟树配置上—…

作者头像 李华
网站建设 2026/5/3 8:31:29

JFlash下载与J-Link调试器配对:从零实现稳定连接

从零构建稳定高效的嵌入式烧录系统:J-Link与JFlash实战全解析 你有没有遇到过这样的场景?产线上的板子一批接一批地等着烧固件,结果JFlash突然报错“无法连接目标”——查电源、换线缆、重启电脑……半小时过去了,进度条还卡在原…

作者头像 李华