您好,登錄后才能下訂單哦!
String類型是Redis中最基本也最簡單的一種數(shù)據(jù)類型
首先演示一些常用的命令
一、SET key value 和GET key
SET key value 和 GET key 設(shè)置鍵值和獲取值
SET將鍵today的值設(shè)為tuesday;GET取出鍵today的值
SET命令執(zhí)行成功后返回OK;GET返回要取到的值
當(dāng)一個(gè)key已經(jīng)有值時(shí),使用SET會(huì)覆蓋其原有值,并且不受類型限制
today的原有值"tuesday"被"12"覆蓋。Redis里沒有整數(shù)類型,即使SET賦值一個(gè)整數(shù),也會(huì)以字符串形式存儲(chǔ)
當(dāng)使用GET操作一個(gè)不存在的鍵時(shí),返回nil
注意:當(dāng)使用SET給定一個(gè)普通的值時(shí),不需要加雙引號(hào),但當(dāng)值有空格或其他特殊字符時(shí),需要加上引號(hào),否則會(huì)報(bào)語法錯(cuò)誤
二、GETRANGE key start end
作用:獲取存儲(chǔ)在指定key中的字符串的子字符串,字符串的截取范圍由start和end來決定【不同于其他腳本語言,這里的start和end都是閉區(qū)間】
同其他腳本一樣,Redis的索引也是從0開始
GETRANGE的使用方法如下:
GETRANGE test 0 3 :從索引0開始由左至右取到索引為3的字符
GETRANGE test 0 -1 : -1代表從右至左的第一個(gè)字符,也就是字符串的末位字符,那么這條命令就是取到字符串的全部
三、GETSET key value
作用:設(shè)置指定key的值,并返回key舊的值
當(dāng)指定key之前并不存在時(shí),使用GETSET會(huì)為key創(chuàng)建一個(gè)值,并且返回nil;當(dāng)key存在時(shí),會(huì)為其指定一個(gè)新值,并且將原有值返回
四、GETBIT key value
作用:對(duì)key所存儲(chǔ)的字符串值,獲取指定偏移量上的位
GETBIT對(duì)于不存在的key或者不存在的offset,返回0
當(dāng)offset存在時(shí),返回偏移量上的位
五、MGET key1 key2 ... keyn
作用:返回所有給定key的值,如果某個(gè)key不存在,返回nil
key1和key2都存在,返回其值;keynotexist并不存在,獲取其值時(shí)返回nil
六、SETBIT key offset
作用:對(duì)key所存儲(chǔ)的字符串值,設(shè)置或清除指定偏移量上的位
當(dāng)沒有使用SETBIT設(shè)置偏移量的位時(shí),使用GETBIT將返回0
七、SETEX key seconds value
作用:為指定的key設(shè)置值和過期時(shí)間,如果key已存在,則新值會(huì)覆蓋舊值
"TTL key" 可以獲取key的剩余存在時(shí)間,如果在執(zhí)行GET時(shí),key存在則返回其值;不存在,返回nil
八、SETEX key value
作用:當(dāng)指定的key不存在時(shí),才給其設(shè)置指定的值。設(shè)置成功返回1,失敗返回0
當(dāng)key已存在,使用SETNX不會(huì)執(zhí)行成功,返回0
九、SETRANGE key offset value
作用:用指定的字符串覆蓋指定key的字符串值,覆蓋的位置從偏移量offset開始
十、STRLEN key
作用:返回指定key的字符串值的長度,當(dāng)key不存在時(shí)返回0
十一、MSET key1 value1 key2 value2 ... keyn valuen
作用:同時(shí)設(shè)置一個(gè)或多個(gè)k-v對(duì)
十二、MSETNX key1 value1 key2 value2 ... keyn valuen
作用:同時(shí)設(shè)置一個(gè)或多個(gè)k-v對(duì),當(dāng)且僅當(dāng)key都不存在時(shí)
當(dāng)key都不存在時(shí),使用MSETNX
當(dāng)有key存在時(shí),使用MSETNX
MSET操作是原子性操作,由于鍵rmdbs已存在,所以language并沒有被設(shè)置,rmdbs的值也未被修改
十三、PSETEX key milliseconds value
作用:同SETEX命令相似,但SETEX的時(shí)間是以秒為單位,PSETEX以毫秒為單位
十四、INCR key
作用:將指定key的值遞增加1。如果key不存在,則會(huì)被初始化為0;如果key的值的類型不是數(shù)字或有特殊字符,返回錯(cuò)誤信息
INCR執(zhí)行成功后,返回遞增后的值
由于pageCount之前并不存在,則會(huì)被初始化為0,經(jīng)過INCR操作之后,值遞增為1
如果INCR操作的key的值類型不對(duì),則會(huì)報(bào)錯(cuò)
十五、INCRBY key increment
作用:給key所存儲(chǔ)的值加上指定的增量值
當(dāng)key存在且是數(shù)字時(shí),INCRBY會(huì)返回增加后的值
當(dāng)key不存在時(shí),INCRBY增加的值即為key的值
當(dāng)key存在,但值不是數(shù)字值時(shí)
十六、INCRBYFLOAT key increment
作用:給key所存儲(chǔ)的值加上浮點(diǎn)增量值
當(dāng)key和increment都不是指數(shù)符號(hào)時(shí)
當(dāng)key的值是整數(shù)值時(shí)
忽略無意義的0
當(dāng)key和increment都是指數(shù)符號(hào)時(shí),執(zhí)行后格式會(huì)改為非指數(shù)符號(hào)
十七、DECR key
作用:同INCR key相反,將key的值減1,同樣key不存在時(shí)會(huì)被初始化為0
當(dāng)對(duì)存在數(shù)值鍵key操作時(shí)
當(dāng)key不存在時(shí),key被創(chuàng)建并初始化為0,再減1
當(dāng)key存在,但值不是數(shù)字值時(shí)
十八、DECRBY key decrement
作用:key 所儲(chǔ)存的值減去給定的減量值
當(dāng)key存在時(shí)
當(dāng)key不存在時(shí)
十九、APPEND key value
作用:如果key已經(jīng)存在并且是字符串值,APPEND將value追加到值的末尾,返回追加后的字符串的長度
當(dāng)key不存時(shí)
當(dāng)key存在時(shí)
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。