redis-cli#執(zhí)行Redis客戶端工具。redis127.0.0.1:6379>existsmykey#判斷該鍵是否存在,存在返回1,否則返回0。(integer)0r" />

日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

Redis 查詢

系統(tǒng) 2963 0


?? ?? 字符串類型是Redis中最為基礎(chǔ)的數(shù)據(jù)存儲類型,它在Redis中是二進(jìn)制安全的,這便意味著該類型可以接受任何格式的數(shù)據(jù),如JPEG圖像數(shù)據(jù)或Json對象描述信息等。在Redis中字符串類型的Value最多可以容納的數(shù)據(jù)長度是512M。

?? 1. SET/GET/APPEND/STRLEN:
??? ? /> redis-cli ??? #執(zhí)行Redis客戶端工具。
?? ?redis 127.0.0.1:6379>? exists mykey ??????????????????? #判斷該鍵是否存在,存在返回1,否則返回0。
?? ?(integer) 0
?? ?redis 127.0.0.1:6379> ?append mykey "hello" ? ? ?? #該鍵并不存在,因此append命令返回當(dāng)前Value的長度。
?? ?(integer) 5
?? ?redis 127.0.0.1:6379>? append mykey " world" ???? #該鍵已經(jīng)存在,因此返回追加后Value的長度。
?? ?(integer) 11
?? ?redis 127.0.0.1:6379>? get mykey ? ? ? ? ? ? ? ? ????? #通過get命令獲取該鍵,以判斷append的結(jié)果。
?? ?"hello world"
??? redis 127.0.0.1:6379>? set mykey "this is a test" ? #通過set命令為鍵設(shè)置新值,并覆蓋原有值。
??? OK
??? redis 127.0.0.1:6379>? get mykey
??? "this is a test"
??? redis 127.0.0.1:6379>? strlen mykey ????????????????? #獲取指定Key的字符長度,等效于C庫中strlen函數(shù)。
??? (integer) 14

?? ? 2. INCR/DECR/INCRBY/DECRBY:
??? redis 127.0.0.1:6379>? set mykey 20 ????? #設(shè)置Key的值為20
?? ?OK
?? ?redis 127.0.0.1:6379>? incr mykey ?? ?? ??? #該Key的值遞增1
?? ?(integer) 21
?? ?redis 127.0.0.1:6379>? decr mykey ???? ??? #該Key的值遞減1
?? ?(integer) 20
?? ?redis 127.0.0.1:6379>? del mykey ??? ? ? ?? #刪除已有鍵。
?? ?(integer) 1
?? ?redis 127.0.0.1:6379>? decr mykey ???? ??? #對空值執(zhí)行遞減操作,其原值被設(shè)定為0,遞減后的值為-1
?? ?(integer) -1
?? ?redis 127.0.0.1:6379>? del mykey? ??
?? ?(integer) 1
?? ?redis 127.0.0.1:6379> ?incr mykey ???????? #對空值執(zhí)行遞增操作,其原值被設(shè)定為0,遞增后的值為1
?? ?(integer) 1
?? ?redis 127.0.0.1:6379>? set mykey hello ? #將該鍵的Value設(shè)置為不能轉(zhuǎn)換為整型的普通字符串。
?? ?OK
?? ?redis 127.0.0.1:6379>? incr mykey ???????? #在該鍵上再次執(zhí)行遞增操作時(shí),Redis將報(bào)告錯(cuò)誤信息。
??? ?(error) ERR value is not an integer or out of range
??? redis 127.0.0.1:6379>? set mykey 10
?? ?OK
?? ?redis 127.0.0.1:6379>? decrby mykey 5 ?
?? ?(integer) 5
?? ?redis 127.0.0.1:6379>? incrby mykey 10
?? ?(integer) 15

??? ?3. GETSET:
?? ?redis 127.0.0.1:6379>? incr mycounter ?????? #將計(jì)數(shù)器的值原子性的遞增1
?? ?(integer) 1
??? #在獲取計(jì)數(shù)器原有值的同時(shí),并將其設(shè)置為新值,這兩個(gè)操作原子性的同時(shí)完成。
?? ?redis 127.0.0.1:6379>? getset mycounter 0? ?
?? ?"1"
?? ?redis 127.0.0.1:6379>? get mycounter ??????? #查看設(shè)置后的結(jié)果。
?? ?"0"
?? ??? ?????
???? 4. SETEX:
??? redis 127.0.0.1:6379>? setex mykey 10 "hello"? ?? #設(shè)置指定Key的過期時(shí)間為10秒。
??? OK????
? ?? #通過ttl命令查看一下指定Key的剩余存活時(shí)間(秒數(shù)),0表示已經(jīng)過期,-1表示永不過期。
??? redis 127.0.0.1:6379>? ttl mykey ???????????????????????
??? (integer) 4
??? redis 127.0.0.1:6379>? get mykey? ????????????????????? #在該鍵的存活期內(nèi)我們?nèi)匀豢梢垣@取到它的Value。
??? "hello"
??? redis 127.0.0.1:6379>? ttl mykey ???????????????????????? #該ttl命令的返回值顯示,該Key已經(jīng)過期。
??? (integer) 0
??? redis 127.0.0.1:6379>? get mykey ?????????????????????? #獲取已過期的Key將返回nil。
??? (nil)

?? 5. SETNX:
?? ?redis 127.0.0.1:6379>? del mykey ???????????? ? ? ? ??? #刪除該鍵,以便于下面的測試驗(yàn)證。
?? ?(integer) 1
?? ?redis 127.0.0.1:6379>? setnx mykey "hello" ???????? #該鍵并不存在,因此該命令執(zhí)行成功。
?? ?(integer) 1
?? ?redis 127.0.0.1:6379>? setnx mykey "world" ??????? #該鍵已經(jīng)存在,因此本次設(shè)置沒有產(chǎn)生任何效果。
?? ?(integer) 0
?? ?redis 127.0.0.1:6379>? get mykey ???????????? ? ? ? ??? #從結(jié)果可以看出,返回的值仍為第一次設(shè)置的值。
?? ?"hello"

???? 6. SETRANGE/GETRANGE:
?? ?redis 127.0.0.1:6379>? set mykey "hello world"? ?????? #設(shè)定初始值。
?? ?OK
?? ?redis 127.0.0.1:6379>? setrange mykey 6 dd? ????????? #從第六個(gè)字節(jié)開始替換2個(gè)字節(jié)(dd只有2個(gè)字節(jié))
?? ?(integer) 11
?? ?redis 127.0.0.1:6379>? get mykey ????????????????????????? #查看替換后的值。
?? ?"hello ddrld"
?? ?redis 127.0.0.1:6379>? setrange mykey 20 dd ???????? #offset已經(jīng)超過該Key原有值的長度了,該命令將會在末尾補(bǔ)0。
?? ?(integer) 22
?? ?redis 127.0.0.1:6379>? get mykey ???????????????????? ? ? ?? #查看補(bǔ)0后替換的結(jié)果。
?? ?"hello ddrld\x00\x00\x00\x00\x00\x00\x00\x00\x00dd"
?? ?redis 127.0.0.1:6379>? del mykey ????????????????????????? #刪除該Key。
?? ?(integer) 1
?? ?redis 127.0.0.1:6379>? setrange mykey 2 dd ????????? #替換空值。
?? ?(integer) 4
?? ?redis 127.0.0.1:6379>? get mykey ???????????????????????? #查看替換空值后的結(jié)果。
?? ?"\x00\x00dd"???
?? ?redis 127.0.0.1:6379>? set mykey "0123456789" ??? #設(shè)置新值。
?? ?OK
?? ?redis 127.0.0.1:6379>? getrange mykey 1 2 ?????? #截取該鍵的Value,從第一個(gè)字節(jié)開始,到第二個(gè)字節(jié)結(jié)束。
?? ?"12"
?? ?redis 127.0.0.1:6379>? getrange mykey 1 20 ??? #20已經(jīng)超過Value的總長度,因此將截取第一個(gè)字節(jié)后面的所有字節(jié)。
?? ?"123456789"

???? 7. SETBIT/GETBIT:
?? ?redis 127.0.0.1:6379>? del mykey
?? ?(integer) 1
?? ?redis 127.0.0.1:6379> ?setbit mykey 7 1 ??????? #設(shè)置從0開始計(jì)算的第七位BIT值為1,返回原有BIT值0
?? ?(integer) 0
?? ?redis 127.0.0.1:6379>? get mykey ???????????????? #獲取設(shè)置的結(jié)果,二進(jìn)制的0000 0001的十六進(jìn)制值為0x01
?? ?"\x01"
?? ?redis 127.0.0.1:6379>? setbit mykey 6 1 ??????? #設(shè)置從0開始計(jì)算的第六位BIT值為1,返回原有BIT值0
?? ?(integer) 0
?? ?redis 127.0.0.1:6379>? get mykey ???????????????? #獲取設(shè)置的結(jié)果,二進(jìn)制的0000 0011的十六進(jìn)制值為0x03
?? ?"\x03"
??? redis 127.0.0.1:6379>? getbit mykey 6? ????????? #返回了指定Offset的BIT值。
?? ?(integer) 1
?? ?redis 127.0.0.1:6379>? getbit mykey 10 ???????? #Offset已經(jīng)超出了value的長度,因此返回0。
?? ?(integer) 0

?? 8. MSET/MGET/MSETNX:
?? ?redis 127.0.0.1:6379>? mset key1 "hello" key2 "world" ??? #批量設(shè)置了key1和key2兩個(gè)鍵。
?? ?OK
?? ?redis 127.0.0.1:6379>? mget key1 key2 ???????????????????????? #批量獲取了key1和key2兩個(gè)鍵的值。
?? ?1) "hello"
?? ?2) "world"
?? ?#批量設(shè)置了key3和key4兩個(gè)鍵,因?yàn)橹八麄儾⒉淮嬖冢栽撁顖?zhí)行成功并返回1。
?? ?redis 127.0.0.1:6379>? msetnx key3 "stephen" key4 "liu" ?
?? ?(integer) 1
?? ?redis 127.0.0.1:6379>? mget key3 key4???? ????????????? ?
?? ?1) "stephen"
?? ?2) "liu"
?? ?#批量設(shè)置了key3和key5兩個(gè)鍵,但是key3已經(jīng)存在,所以該命令執(zhí)行失敗并返回0。
?? ?redis 127.0.0.1:6379>? msetnx key3 "hello" key5 "world" ?
?? ?(integer) 0
?? ?#批量獲取key3和key5,由于key5沒有設(shè)置成功,所以返回nil。
?? ?redis 127.0.0.1:6379>? mget key3 key5????? ???????????? ?
?? ?1) "stephen"
?? ?2) (nil)

?老徐,人人安家網(wǎng) (http://www.renrenaj.com) 技術(shù)架構(gòu) 人人安家網(wǎng)版本采用開源的方式:訪問http://www.renrenaj.com/opensource/

Redis 查詢


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 大关县| 商城县| 信阳市| 获嘉县| 乳源| 大同市| 南京市| 河池市| 平舆县| 五指山市| 崇仁县| 平远县| 舒兰市| 绍兴县| 沽源县| 乌苏市| 东兰县| 石林| 宁明县| 永宁县| 兴城市| 会东县| 南宫市| 凤山县| 柳江县| 中宁县| 天祝| 大连市| 泗阳县| 新营市| 黑河市| 定远县| 沁源县| 隆化县| 东乡族自治县| 芜湖县| 海晏县| 饶河县| 伊金霍洛旗| 蓝山县| 永泰县|