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

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM