Redis KEYS 命令用于查找 Redis 中所有符合给定模式 pattern 的 KEY 。
192.168.98.70:6379> KEYS pattern
参数 | 描述 |
---|---|
pattern | 要匹配的键的模式。 |
模式 | 描述 |
---|---|
KEYS * |
匹配数据库中所有 KEYS 。 |
KEYS h?ike |
匹配 haike , hbike 和 hxike 等。 |
KEYS h*ike |
匹配 hike ,haike 和 haaaaaaaike 等。 |
KEYS h[abc]ike |
匹配 haike ,hbike 和 hcike,但不匹配 hike 。 |
符合给定模式的 KEY 列表。
O(N), N 为数据库中 KEY 的数量。
>= 1.0.0
使用 * 号匹配符,表示匹配 0 个或者多个字符
# 批量设置值
192.168.98.70:6379> MSET one 1 two 2 three 3 four 4
OK
# 匹配所有带 o 的 KEY
192.168.98.70:6379> KEYS *o*
1) "four"
2) "two"
3) "one"
192.168.98.70:6379> DEL one two three four
(integer) 4
使用 **MSET **命令 批量设置键和值。*
表示匹配 0 个或者多个字符,所以 o 表示匹配所有带 o 的 KEY。
使用 ? 号匹配符,表示匹配单个字符
# 批量设置值
192.168.98.70:6379> MSET one 1 two 2 three 3 four 4
OK
# 匹配以 t 开始,并且后面接两个字符的 KEY
192.168.98.70:6379> KEYS t??
1) "two"
192.168.98.70:6379> DEL one two three four
(integer) 4
我们首先,使用 MSET 命令批量设置键和值。接着,因为 ?
表示匹配一个字符, 两个 ?
表示匹配两个字符, 所以 t??
表示匹配以 t 开始,并且后面是两个字符的KEY,这里只有 two 符号要求,因此只返回了 two。
使用 [] 号匹配符,表示匹配指定字符
# 批量设置值
192.168.98.70:6379> MSET one 1 two 2 three 3 four 4
OK
# 匹配以 t 开始,后面是 w 或者 h 字母,再后面有 0 个或者多个字符的 KEYS
192.168.98.70:6379> KEYS t[wh]*
1) "two"
2) "three"
192.168.98.70:6379> DEL one two three four
(integer) 4
首先,我们使用了 MSET 命令批量设置键和值。因为,[] 表示匹配所有 [] 里面的字符,所以 t[wh] 表示匹配首字母是 t 并且后面接着是 w 或者是 h 的 KEY,因此返回了 two 和 three。
单独使用 * 表示匹配所有键
# 批量设置值
192.168.98.70:6379> MSET one 1 two 2 three 3 four 4
OK
# 匹配数据库内所有 KEYS
192.168.98.70:6379> KEYS *
1) "four"
2) "three"
3) "two"
4) "one"
192.168.98.70:6379> DEL one two three four
(integer) 4
使用 MSET 命令批量设置键和值。最后,我们使用了 KEYS * 命令,来匹配所有键。
Redis KEYS 命令用于查找 Redis 中所有符合给定模式 pattern 的 KEY 。Redis KEYS 命令语法:
192.168.98.70:6379> KEYS pattern