日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

概述

redis一般用來做緩存,可能很多朋友都沒有深入去學習redis的相關命令,只是涉及到安裝部署而已,所以今天主要總結介紹一下redis字符串的一些命令。


SET

語法:SET key value [EX seconds] [PX milliseconds] [NX|XX]

將字符串值 value 關聯到 key 。

如果 key 已經持有其他值, SET 就覆寫舊值, 無視類型。

當 SET 命令對一個帶有生存時間(TTL)的鍵進行設置之后, 該鍵原有的 TTL 將被清除。

ps:因為 SET 命令可以通過參數來實現 SETNX 、 SETEX 以及 PSETEX 命令的效果, 所以 Redis 將來的版本可能會移除并廢棄 SETNX 、 SETEX 和 PSETEX 這三個命令。

返回值

在 Redis 2.6.12 版本以前, SET 命令總是返回 OK 。

從 Redis 2.6.12 版本開始, SET 命令只在設置操作成功完成時才返回 OK ; 如果命令使用了 NX或者 XX 選項, 但是因為條件沒達到而造成設置操作未執行, 那么命令將返回空批量回復(NULL Bulk Reply)。

實例:

對不存在的鍵進行設置:

redis字符串相關命令總結,值得收藏

 

對已存在的鍵進行設置

redis字符串相關命令總結,值得收藏

 


SETNX key value

只在鍵 key 不存在的情況下, 將鍵 key 的值設置為 value 。

若鍵 key 已經存在, 則 SETNX 命令不做任何動作。

SETNX 是『SET if Not eXists』(如果不存在,則 SET)的簡寫。

返回值

命令在設置成功時返回 1 , 設置失敗時返回 0 。

實例:

redis字符串相關命令總結,值得收藏

 


SETEX key seconds value

將鍵 key 的值設置為 value , 并將鍵 key 的生存時間設置為 seconds 秒鐘。

如果鍵 key 已經存在, 那么 SETEX 命令將覆蓋已有的值。

SETEX 命令的效果和以下兩個命令的效果類似:

SET key value
EXPIRE key seconds # 設置生存時間

SETEX 和這兩個命令的不同之處在于 SETEX 是一個原子(atomic)操作, 它可以在同一時間內完成設置值和設置過期時間這兩個操作, 因此 SETEX 命令在儲存緩存的時候非常實用。

返回值

命令在設置成功時返回 OK 。 當 seconds 參數不合法時, 命令將返回一個錯誤。

實例

在鍵 key 不存在的情況下執行 SETEX:

redis字符串相關命令總結,值得收藏

 

鍵 key 已經存在, 使用 SETEX 覆蓋舊值

redis字符串相關命令總結,值得收藏

 


PSETEX key milliseconds value

這個命令和 SETEX 命令相似, 但它以毫秒為單位設置 key 的生存時間, 而不是像 SETEX 命令那樣以秒為單位進行設置。

返回值:命令在設置成功時返回 OK

實例:

redis字符串相關命令總結,值得收藏

 


GET key

返回與鍵 key 相關聯的字符串值。

返回值

如果鍵 key 不存在, 那么返回特殊值 nil ; 否則, 返回鍵 key 的值。

如果鍵 key 的值并非字符串類型, 那么返回一個錯誤, 因為 GET 命令只能用于字符串值。

實例

對不存在的鍵 key 或是字符串類型的鍵 key 執行 GET 命令

redis字符串相關命令總結,值得收藏

 

對不是字符串類型的鍵 key 執行 GET 命令

redis字符串相關命令總結,值得收藏

 


GETSET key value

將鍵 key 的值設為 value , 并返回鍵 key 在被設置之前的舊值。

返回值

返回給定鍵 key 的舊值。

如果鍵 key 沒有舊值, 也即是說, 鍵 key 在被設置之前并不存在, 那么命令返回 nil 。

當鍵 key 存在但不是字符串類型時, 命令返回一個錯誤。

實例

redis字符串相關命令總結,值得收藏

 


STRLEN key

返回鍵 key 儲存的字符串值的長度。

返回值

STRLEN 命令返回字符串值的長度。

當鍵 key 不存在時, 命令返回 0 。

當 key 儲存的不是字符串值時, 返回一個錯誤。

實例

獲取字符串值的長度

redis字符串相關命令總結,值得收藏

 


AppEND key value

如果鍵 key 已經存在并且它的值是一個字符串, APPEND 命令將把 value 追加到鍵 key 現有值的末尾。

如果 key 不存在, APPEND 就簡單地將鍵 key 的值設為 value , 就像執行 SET key value 一樣。

返回值

追加 value 之后, 鍵 key 的值的長度。

實例

對不存在的 key 執行 APPEND :

redis字符串相關命令總結,值得收藏

 

對已存在的字符串進行 APPEND

redis字符串相關命令總結,值得收藏

 


SETRANGE key offset value

從偏移量 offset 開始, 用 value 參數覆蓋(overwrite)鍵 key 儲存的字符串值。

不存在的鍵 key 當作空白字符串處理。

SETRANGE 命令會確保字符串足夠長以便將 value 設置到指定的偏移量上, 如果鍵 key 原來儲存的字符串長度比偏移量小(比如字符串只有 5 個字符長,但你設置的 offset 是 10 ), 那么原字符和偏移量之間的空白將用零字節(zerobytes, "x00" )進行填充。

因為 Redis 字符串的大小被限制在 512 兆(megabytes)以內, 所以用戶能夠使用的最大偏移量為 2^29-1(536870911) , 如果你需要使用比這更大的空間, 可以考慮使用多個 key 。

注意:當生成一個很長的字符串時, Redis 需要分配內存空間, 該操作有時候可能會造成服務器阻塞(block)。 在2010年出產的macbook Pro上, 設置偏移量為 536870911(512MB 內存分配)將耗費約 300 毫秒, 設置偏移量為 134217728(128MB 內存分配)將耗費約 80 毫秒, 設置偏移量 33554432(32MB 內存分配)將耗費約 30 毫秒, 設置偏移量為 8388608(8MB 內存分配)將耗費約 8 毫秒。

返回值

SETRANGE 命令會返回被修改之后, 字符串值的長度。

實例

對非空字符串執行 SETRANGE 命令

redis字符串相關命令總結,值得收藏

 


GETRANGE key start end

返回鍵 key 儲存的字符串值的指定部分, 字符串的截取范圍由 start 和 end 兩個偏移量決定 (包括 start 和 end 在內)。

負數偏移量表示從字符串的末尾開始計數, -1 表示最后一個字符, -2 表示倒數第二個字符, 以此類推。

GETRANGE 通過保證子字符串的值域(range)不超過實際字符串的值域來處理超出范圍的值域請求。

返回值

GETRANGE 命令會返回字符串值的指定部分。

實例

redis字符串相關命令總結,值得收藏

 


INCR key

為鍵 key 儲存的數字值加上一。

如果鍵 key 不存在, 那么它的值會先被初始化為 0 , 然后再執行 INCR 命令。

如果鍵 key 儲存的值不能被解釋為數字, 那么 INCR 命令將返回一個錯誤。

本操作的值限制在 64 位(bit)有符號數字表示之內。

返回值

INCR 命令會返回鍵 key 在執行加一操作之后的值。

實例

redis字符串相關命令總結,值得收藏

 


INCRBY key increment

為鍵 key 儲存的數字值加上增量 increment 。

如果鍵 key 不存在, 那么鍵 key 的值會先被初始化為 0 , 然后再執行 INCRBY 命令。

如果鍵 key 儲存的值不能被解釋為數字, 那么 INCRBY 命令將返回一個錯誤。

本操作的值限制在 64 位(bit)有符號數字表示之內。

返回值

在加上增量 increment 之后, 鍵 key 當前的值。

實例

鍵存在,并且值為數字:

redis字符串相關命令總結,值得收藏

 

鍵不存在

redis字符串相關命令總結,值得收藏

 


INCRBYFLOAT key increment

為鍵 key 儲存的值加上浮點數增量 increment 。

如果鍵 key 不存在, 那么 INCRBYFLOAT 會先將鍵 key 的值設為 0 , 然后再執行加法操作。

如果命令執行成功, 那么鍵 key 的值會被更新為執行加法計算之后的新值, 并且新值會以字符串的形式返回給調用者。

無論是鍵 key 的值還是增量 increment , 都可以使用像 2.0e7 、 3e5 、 90e-2 那樣的指數符號(exponential notation)來表示, 但是, 執行 INCRBYFLOAT 命令之后的值總是以同樣的形式儲存, 也即是, 它們總是由一個數字, 一個(可選的)小數點和一個任意長度的小數部分組成(比如 3.14 、 69.768 ,諸如此類), 小數部分尾隨的 0 會被移除, 如果可能的話, 命令還會將浮點數轉換為整數(比如 3.0 會被保存成 3 )。

此外, 無論加法計算所得的浮點數的實際精度有多長, INCRBYFLOAT 命令的計算結果最多只保留小數點的后十七位。

返回值

在加上增量 increment 之后, 鍵 key 的值。

實例

redis字符串相關命令總結,值得收藏

 


DECR key

為鍵 key 儲存的數字值減去一。

如果鍵 key 不存在, 那么鍵 key 的值會先被初始化為 0 , 然后再執行 DECR 操作。

如果鍵 key 儲存的值不能被解釋為數字, 那么 DECR 命令將返回一個錯誤。

本操作的值限制在 64 位(bit)有符號數字表示之內。

關于遞增(increment) / 遞減(decrement)操作的更多信息, 請參見 INCR 命令的文檔。

返回值

DECR 命令會返回鍵 key 在執行減一操作之后的值。

實例

對儲存數字值的鍵 key 執行 DECR 命令:

redis字符串相關命令總結,值得收藏

 

對不存在的鍵執行 DECR 命令

redis字符串相關命令總結,值得收藏

 


DECRBY key decrement

將鍵 key 儲存的整數值減去減量 decrement 。

如果鍵 key 不存在, 那么鍵 key 的值會先被初始化為 0 , 然后再執行 DECRBY 命令。

如果鍵 key 儲存的值不能被解釋為數字, 那么 DECRBY 命令將返回一個錯誤。

本操作的值限制在 64 位(bit)有符號數字表示之內。

關于更多遞增(increment) / 遞減(decrement)操作的更多信息, 請參見 INCR 命令的文檔。

返回值

DECRBY 命令會返回鍵在執行減法操作之后的值。

實例

redis字符串相關命令總結,值得收藏

 


MSET key value [key value …]

同時為多個鍵設置值。

如果某個給定鍵已經存在, 那么 MSET 將使用新值去覆蓋舊值, 如果這不是你所希望的效果, 請考慮使用 MSETNX 命令, 這個命令只會在所有給定鍵都不存在的情況下進行設置。

MSET 是一個原子性(atomic)操作, 所有給定鍵都會在同一時間內被設置, 不會出現某些鍵被設置了但是另一些鍵沒有被設置的情況。

返回值

MSET 命令總是返回 OK 。

實例

同時對多個鍵進行設置:

redis字符串相關命令總結,值得收藏

 

覆蓋已有的值:

redis字符串相關命令總結,值得收藏

 


MSETNX key value [key value …]

當且僅當所有給定鍵都不存在時, 為所有給定鍵設置值。

即使只有一個給定鍵已經存在, MSETNX 命令也會拒絕執行對所有鍵的設置操作。

MSETNX 是一個原子性(atomic)操作, 所有給定鍵要么就全部都被設置, 要么就全部都不設置, 不可能出現第三種狀態。

返回值

當所有給定鍵都設置成功時, 命令返回 1 ; 如果因為某個給定鍵已經存在而導致設置未能成功執行, 那么命令返回 0 。

實例

對不存在的鍵執行 MSETNX 命令

redis字符串相關命令總結,值得收藏

 

對某個已經存在的鍵進行設置

redis字符串相關命令總結,值得收藏

 


MGET key [key …]

返回給定的一個或多個字符串鍵的值。

如果給定的字符串鍵里面, 有某個鍵不存在, 那么這個鍵的值將以特殊值 nil 表示。

返回值

MGET 命令將返回一個列表, 列表中包含了所有給定鍵的值。

實例

redis字符串相關命令總結,值得收藏
 

分享到:
標簽:redis
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定