Redis的基础指令

📅 2026/7/14 7:01:02
Redis的基础指令
文章目录Redis的基础指令1. KEYS --- 谨慎使用2. EXISTS3. DEL4. EXPIRE5. TTL (Time To Live)6. TYPERedis的基础指令1. KEYS — 谨慎使用通过通配符进行匹配: 1. h?llo 匹配 hellohallohxllo 2. h*llo 匹配 hllo, heeeello 3. h[ae]llo 匹配 hallo, hello 4. h[^e]llo 匹配 除了 hello 5. h[a-e] 匹配 hello ---匹配从a到e的闭区间 特别注意3和5的区别语法KEYS pattern返回值匹配pattern的所有key示例redis MSET firstname Jack lastname Stuntman age 35 OK redis KEYS *name* 1) firstname 2) lastname redis KEYS a?? 1) age redis KEYS * 1) age 2) firstname 3) lastname为什么慎重使用呢因为当数据很多时会占用这个线程去查询而堵塞了其他的指令尤其是 **KEYS *** 这条语句和SELECT * FROM table;一样不能随便使用在数据很多的情况下2. EXISTS判断某个 key 是否存在语法EXISTS key[key...]这个 [ ] 里面的东西可以加也可以不加在这里可以一次查询多个key是否存在批量查询减少网络开销返回值存在key的个数没有则返回0示例redis SET key1 Hello OK redis EXISTS key1 (integer) 1 redis EXISTS nosuchkey (integer) 0 redis SET key2 World OK redis EXISTS key1 key2 nosuchkey (integer) 23. DEL删除指定的key语法DEL key [key ...]返回值删除key的个数示例redis SET key1 Hello OK redis SET key2 World OK redis DEL key1 key2 key3 (integer) 24. EXPIRE为指定的key添加秒级的过期时间语法EXPIRE key seconds返回值1设置成功 0设置失败示例redis SET mykey Hello OK redis EXPIRE mykey 10 (integer) 1 redis TTL mykey (integer) 105. TTL (Time To Live)获取指定key的过期时间秒级语法TTL key返回值1. 剩余的过期时间 2. -1表示没有关联过期时间 3. -2表示key不存在有可能本来就不存在这个key有可能过期了总的来说都是key不存在了示例redis SET mykey Hello OK redis EXPIRE mykey 10 (integer) 1 redis TTL mykey (integer) 10EXPIRE 和 TTL 命令都有对应的支持毫秒为单位的版本PEXPIRE 和 PTTL6. TYPE返回key对应的数据类型语法TYPE key返回值none, string, list, set, zset, hash, stream ...示例redis SET key1 value OK redis LPUSH key2 value (integer) 1 redis SADD key3 value (integer) 1 redis TYPE key1 string redis TYPE key2 list redis TYPE key3 set