Redis常用命令

一、字符串

命令 說明
set key val [ex seconds | px milliseconds] [nx|xx] 設(shè)置字符串的值
ex:秒級過期時間
px:毫秒級過期時間
nx:鍵不存在才能設(shè)置成功,用于添加
xx:鍵存在才能設(shè)置成功,用于編輯
setnx key val 鍵不存在才能設(shè)置成功,用于添加
setex key seconds val 鍵存在才能設(shè)置成功,用于編輯
mset [key val ...] 批量設(shè)置鍵值
get key 獲取值
mget [key ...] 批量獲取值
incr key 自增
值非整數(shù)返回錯誤
值是整數(shù)返回自增結(jié)果
鍵不存在按0自增返回1
decr key 自減
值非整數(shù)返回錯誤
值是整數(shù)返回自減結(jié)果
鍵不存在按0自減返回-1
incrby key increment 自增指定增量
decrby key decrement 自減指定減量
incrbyfloat key increment 自增指定浮點數(shù)
append key val 給字符串尾部追加字符
strlen key 計算字符串長度
getset key val 設(shè)置新值并返回原值
setrange key offset val 設(shè)置指定位置的字符
getrange key start end 獲取指定位置字符串

二、哈希

命令 說明
hset key field val 設(shè)置字段值
gset key field 獲取字段值
hdel key [field ...] 批量刪除字段值
hlen key 計算字段個數(shù)
hmset key [field val ...] 批量設(shè)置字段值
hmget key [field ...] 批量獲取字段值
hexists key field 判斷字段是否存在
hkeys key 獲取該鍵所有字段名稱
hvals key 獲取該鍵所有值
hgetall key 獲取該鍵所有字段與值
hincrby key field increment 自增指定增量
hincrbyfloat key field increment 自增指定浮點數(shù)增量
hstrlen key field 計算字符串長度

三、列表

命令 說明
rpush key [val ...] 從右邊插入元素
lpush key [val ...] 從左邊插入元素
linsert key [before | after] pivot val 向某元素前或后插入元素
搜索首個pivot元素,搜索不到返回-1
在pivot元素前或后插入元素
lrange key start end 查找指定范圍的元素列表,包括start和end下標的元素
lindex key index 獲取列表指定索引下標的元素
llen key 獲取列表的元素總數(shù)
lpop key 從列表左側(cè)彈出元素。例:a b c => b c
rpop key 從列表右側(cè)彈出元素。例:a b c => a b
lrem key count val 刪除指定元素。搜索等于val的元素刪除
count > 0 從左到右刪除至多count個元素
count < 0 從右到左刪除至多count個元素
count = 0 刪除所有元素
ltrim key start end 按照索引范圍【閉區(qū)間】修剪列表,范圍外的元素刪除
lset key index val 修改指定索引下標的元素
blpop [key ...] timeout 從左側(cè)阻塞式彈出
brpop [key ...] timeout 從右側(cè)阻塞式彈出
列表為空
timeout > 0 ,timeout秒后彈出空值,期間有元素插入將直接彈出
timeout = 0 ,一直阻塞等待,直至有元素插入,然后彈出
列表不為空將直接彈出
多個鍵時,從左到右遍歷,一旦有一個鍵能彈出元素,立即返回
多個客戶端對同一個鍵執(zhí)行brpop時
最先執(zhí)行的可以獲得彈出值;其余的繼續(xù)阻塞

四、集合

命令 說明
sadd key [member ...] 添加成員
srem key [member ...] 刪除成員
scard key 計算成員個數(shù)
sismember key member 判斷成員是否存在于集合中
srandmember key count 隨機從集合返回指定個數(shù)成員
spop key count 隨機從集合彈出指定個數(shù)成員
smembers key 獲取所有成員
sinter [key ...] 交集
sunion [key ...] 并集
sdiff [key ...] 差集
sinterstore destination [key ...] 交集并保存為新集合 destination:新集合名稱
sunionstore destination [key ...] 并集并保存為新集合
sdiffstore destination [key ...] 差集并保存為新集合

五、有序集合

命令 說明
zadd key [nx|xx] [ch] [incr] [score member ...] 添加成員
nx:鍵不存在才能設(shè)置成功,用于添加
xx:鍵存在才能設(shè)置成功,用于編輯
ch:返回操作后元素和分數(shù)發(fā)生變化的個數(shù)
incr:對score做自增,增量為此次命令的score值
zcard 獲取成員個數(shù)
zscore key member 獲取某個成員分數(shù)
zrank key member 計算成員的score在集合中的排名,從低到高
zrevrank key member 計算成員的score在集合中的排名,從高到低
zrem key [member ...] 刪除成員
zincrby key increment member 增加成員分數(shù)
zrange key start end [withscores] 返回指定排名范圍的成員,從低到高
withscores:同時返回成員分數(shù)
zrevrange key start end [withscores] 返回指定排名范圍的成員,從高到低
zrangebyscore key min max [withscores] [limit offset count] 返回指定分數(shù)范圍的成員。從低到高
withscores:同時返回成員分數(shù)
limit offset count:限制輸出的起始位置和個數(shù)
min和max支持開區(qū)間、閉區(qū)間、無限小(-inf)、無限大(+inf)
zrevrangebyscore key min max [withscores] [limit offset count] 返回指定分數(shù)范圍的成員。從高到低
zcount key min max 返回指定分數(shù)范圍成員個數(shù)
zremrangebyrank key start end 刪除指定排名內(nèi)的升序元素
zremrangebyscore key min max 刪除指定分數(shù)內(nèi)的成員
zinterstore destination numkeys [key ...] [weights weight] [aggregate sum|min|max] 交集并保存
destination:新集合名稱
numkeys:需要做交集計算的鍵的個數(shù)
weights:每個鍵的權(quán)重,交集計算時,每個鍵的member會將分數(shù)乘以權(quán)重。權(quán)重默認1
aggregate:計算交集后,分值可按sum、min、max做匯總。默認sum
zunionstore destination numkeys [key ...] [weights weight] [aggregate sum|min|max] 并集并保存。參數(shù)同上

參考《Redis開發(fā)與運維》

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關(guān)閱讀更多精彩內(nèi)容

  • redis是一個以key-value存儲的非關(guān)系型數(shù)據(jù)庫。有五種數(shù)據(jù)類型,string、hashes、list、s...
    林ze宏閱讀 1,111評論 0 0
  • 一、概要 中文文檔 Redis 支持 5 中數(shù)據(jù)類型:string(字符串),hash(哈希),list(列表),...
    楊健kimyeung閱讀 264評論 0 0
  • 數(shù)據(jù)庫命令 查看鍵的類型 注: 返回鍵的類型HyperLogLog類型返回string,HyperLogLog底層...
    紫云02閱讀 248評論 0 0
  • 編號命令描述 1 DEL key 此命令刪除一個指定鍵(如果存在)。...
    huoyl0410閱讀 410評論 0 1
  • 漸變的面目拼圖要我怎么拼? 我是疲乏了還是投降了? 不是不允許自己墜落, 我沒有滴水不進的保護膜。 就是害怕變得面...
    悶熱當乘涼閱讀 4,493評論 0 13

友情鏈接更多精彩內(nèi)容