一、字符串
| 命令 | 說明 |
|---|---|
| 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ā)與運維》