redis命令-string(字符串)

1、set

set key value

  1. 總是返回OK站超,不會失敗荸恕,如果已有值則覆蓋。
  2. 復雜度O(1)
127.0.0.1:6379> set name tom
OK

2死相、get

get key

  1. 取出key的值融求,不存在返回nil
  2. 復雜度O(1)
127.0.0.1:6379> get name
"tom"
127.0.0.1:6379> get no_exist
(nil)

2、setnx

setnx key value

  1. key不存在時將key的值設(shè)為value
  2. key存在的情況下不做任何動作
  3. setnx即set if not exists
  4. 成功返回1算撮,失敗返回0
  5. 復雜度O(1)
  6. 常用作鎖
127.0.0.1:6379> setnx name tom      //不存在時成功設(shè)置
(integer) 1
127.0.0.1:6379> setnx name bob      //已存在則失敗
(integer) 0

3生宛、setex

setex key seconds value

  1. key的值設(shè)為value,seconds秒后過期
  2. setex 即set expire
  3. 是原子操作县昂,先set再expire不是原子操作
  4. 復雜度O(1)
127.0.0.1:6379> setex test 5 1
OK
127.0.0.1:6379> get test
"1"
127.0.0.1:6379> get test    // 5s后
(nil)

4、setrange

setrange key offset value

  1. 從offset開始對key的值進行覆蓋陷舅,返回值是修改后的長度倒彰。
  2. 如果原字符串長度5、設(shè)置的offset是10莱睁,中間的部分將使用零比特(zerobytes,"\x00")來填充待讳。
127.0.0.1:6379> set name tom
OK
127.0.0.1:6379> setrange name 5 hello
(integer) 10
127.0.0.1:6379> get name
"tom\x00\x00hello"

127.0.0.1:6379> set test 11111
OK
127.0.0.1:6379> setrange test 3 22222
(integer) 8
127.0.0.1:6379> get test
"11122222"

5、getrange

getrange key start end

  1. 類似字符串截取仰剿,取出start到end的內(nèi)容(包括start和end)
  2. 負數(shù)表示倒數(shù)第幾個创淡,如-1表示最后一個
  3. 超出范圍不會報錯,忽略超出部分
  4. 復雜度O(N)
127.0.0.1:6379> set test hello,world
OK
127.0.0.1:6379> getrange test 0 4
"hello"
127.0.0.1:6379> getrange test -5 -1
"world"
127.0.0.1:6379> getrange test 6 10000  // 超出部分忽略
"world"

6酥馍、mset

mset key1 value1 key2 value2 ...

  1. 即many set辩昆,用法同set阅酪,但可以一次設(shè)置多個值
  2. 復雜度O(N)旨袒,N為set的個數(shù)
  3. 操作redis時可以考慮將多個set合并成mset,一次訪問redis即可完成术辐,效率比一個一個來高
  4. 原子操作砚尽,不會出現(xiàn)某些成功設(shè)置某些失敗的情況
127.0.0.1:6379> mset book redis author someone
OK

7、mget

mget key1 key2 ...

  1. 即many get辉词,一次獲取多個key的值
  2. 復雜度O(N)必孤,N為get的個數(shù)
127.0.0.1:6379> mget book author
1) "redis"
2) "someone"

9、msetnx

msetnx key1 value1 key2 value2 ...

  1. 同setnx瑞躺,但同時設(shè)置多個值
  2. 有一個失敗則全部不設(shè)置
  3. 原子操作
  4. 復雜度O(N)
127.0.0.1:6379> setnx test1 1
(integer) 1
127.0.0.1:6379> msetnx test1 1 test2 2  //test1存在導致全部不設(shè)置
(integer) 0
127.0.0.1:6379> get test2  //test2為nil
(nil)

10敷搪、append

append key value

  1. key存在,則將value追加到原值后面
  2. key不存在幢哨,等同于set
  3. 返回值:追加value之后赡勘,key中字符串的長度
127.0.0.1:6379> set test hello
OK
127.0.0.1:6379> append test ,world
(integer) 11
127.0.0.1:6379> get test
"hello,world"

11、getset

getset key valua

  1. key值設(shè)為value,返回key的舊值
127.0.0.1:6379> set test hello
OK
127.0.0.1:6379> getset test world
"hello"

12捞镰、incr

incr key

  1. 將key存儲的數(shù)字+1
  2. key不存在時默認為0
  3. key的值不能表示為數(shù)字會error
127.0.0.1:6379> set test 3
OK
127.0.0.1:6379> incr test
(integer) 4
127.0.0.1:6379> incr test2  // 不存在的默認0
(integer) 1
127.0.0.1:6379> set test3 hello
OK
127.0.0.1:6379> incr test3  // hello不能表示為數(shù)字闸与,error
(error) ERR value is not an integer or out of range

13、decr

decr key

  1. key值-1岸售,用法同incr.

14践樱、incrby

incrby key num

  1. key的值+num,類似incr,但是增加指定的值
127.0.0.1:6379> set test 1
OK
127.0.0.1:6379> incrby test 3
(integer) 4

15凸丸、decrby

decrby key num

  1. key值減少num
127.0.0.1:6379> set test 10
OK
127.0.0.1:6379> decrby test 5
(integer) 5

16拷邢、strlen

strlen key

  1. 返回值為key的長度,key不存在返回0
127.0.0.1:6379> strlen test
(integer) 5
127.0.0.1:6379> strlen no_exists
(integer) 0

17屎慢、psetex

psetex key milliseconds value

  1. 與setex類型解孙,但時間的單位是毫秒
  2. 可用版本: >= 2.6.0
127.0.0.1:6379> psetex test 100 1
OK
127.0.0.1:6379> get test
(nil)
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末坑填,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子弛姜,更是在濱河造成了極大的恐慌脐瑰,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,884評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件廷臼,死亡現(xiàn)場離奇詭異苍在,居然都是意外死亡,警方通過查閱死者的電腦和手機荠商,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,347評論 3 385
  • 文/潘曉璐 我一進店門寂恬,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人莱没,你說我怎么就攤上這事初肉。” “怎么了饰躲?”我有些...
    開封第一講書人閱讀 157,435評論 0 348
  • 文/不壞的土叔 我叫張陵牙咏,是天一觀的道長。 經(jīng)常有香客問我嘹裂,道長妄壶,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,509評論 1 284
  • 正文 為了忘掉前任寄狼,我火速辦了婚禮丁寄,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘泊愧。我一直安慰自己伊磺,他們只是感情好,可當我...
    茶點故事閱讀 65,611評論 6 386
  • 文/花漫 我一把揭開白布删咱。 她就那樣靜靜地躺著屑埋,像睡著了一般。 火紅的嫁衣襯著肌膚如雪腋腮。 梳的紋絲不亂的頭發(fā)上雀彼,一...
    開封第一講書人閱讀 49,837評論 1 290
  • 那天,我揣著相機與錄音即寡,去河邊找鬼徊哑。 笑死,一個胖子當著我的面吹牛聪富,可吹牛的內(nèi)容都是我干的莺丑。 我是一名探鬼主播,決...
    沈念sama閱讀 38,987評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼梢莽!你這毒婦竟也來了萧豆?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,730評論 0 267
  • 序言:老撾萬榮一對情侶失蹤昏名,失蹤者是張志新(化名)和其女友劉穎涮雷,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體轻局,經(jīng)...
    沈念sama閱讀 44,194評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡洪鸭,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,525評論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了仑扑。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片览爵。...
    茶點故事閱讀 38,664評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖镇饮,靈堂內(nèi)的尸體忽然破棺而出蜓竹,到底是詐尸還是另有隱情,我是刑警寧澤储藐,帶...
    沈念sama閱讀 34,334評論 4 330
  • 正文 年R本政府宣布俱济,位于F島的核電站,受9級特大地震影響邑茄,放射性物質(zhì)發(fā)生泄漏姨蝴。R本人自食惡果不足惜俊啼,卻給世界環(huán)境...
    茶點故事閱讀 39,944評論 3 313
  • 文/蒙蒙 一肺缕、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧授帕,春花似錦同木、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,764評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至芥映,卻和暖如春洲尊,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背奈偏。 一陣腳步聲響...
    開封第一講書人閱讀 31,997評論 1 266
  • 我被黑心中介騙來泰國打工坞嘀, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人惊来。 一個月前我還...
    沈念sama閱讀 46,389評論 2 360
  • 正文 我出身青樓丽涩,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子矢渊,可洞房花燭夜當晚...
    茶點故事閱讀 43,554評論 2 349