這篇文章主要介紹了redis中數(shù)據(jù)類型命令有哪些,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
創(chuàng)新互聯(lián)建站是一家專注于成都做網(wǎng)站、網(wǎng)站設(shè)計與策劃設(shè)計,炎陵網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)建站做網(wǎng)站,專注于網(wǎng)站建設(shè)10多年,網(wǎng)設(shè)計領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:炎陵等地區(qū)。炎陵做網(wǎng)站價格咨詢:18980820575redis是鍵值對的數(shù)據(jù)庫,有5中主要數(shù)據(jù)類型:
字符串類型(string),散列類型(hash),列表類型(list),集合類型(set),有序集合類型(zset)
幾個基本的命令:
函數(shù) | 說明 |
---|---|
keys * | 獲得當(dāng)前數(shù)據(jù)庫的所有鍵 |
?exists key [key ...] | 判斷鍵是否存在,返回個數(shù),如果key有一樣的也是疊加數(shù) |
del key [key ...] | 刪除鍵,返回刪除的個數(shù) |
?type key | 獲取減值的數(shù)據(jù)類型(string,hash,list,set,zset) |
flushall | 清空所有數(shù)據(jù)庫 |
config [get、set] | redis配置 |
-inf 負無窮
+inf正無窮
一:字符串類型(string)
字符串類型是Redis的最基本類型,它可以存儲任何形式的字符串。其它的四種類型都是字符串類型的不同形式。
函數(shù) | 語法 |
---|---|
最基本的命令:GET、SET | GET key,SET key value value如果有空格需要雙引號以示區(qū)分 |
整數(shù)遞增:INCR | INCR key 默認值為0,所以首先執(zhí)行命令得到 1 ,不是整型提示錯誤 |
增加指定的整數(shù):INCRBY | INCRBY key increment |
整數(shù)遞減:DECR | DECR key 默認值為0,所以首先執(zhí)行命令得到 -1,不是整型提示錯誤 |
減少指定的整數(shù):DECRBY | DECRBY key increment |
增加指定浮點數(shù):INCRBYFLOAT | INCRBYFLOAT key increment 與INCR命令類似,只不過可以遞增一個雙精度浮點數(shù) |
向尾部追加值:APPEND | APPEND key value redis客戶端并不是輸出追加后的字符串,而是輸出字符串總長度 |
獲取字符串長度:STRLEN | STRLEN key 如果鍵不存在返回0,注意如果有中文時,一個中文長度是3,redis是使用UTF-8編碼中文的 |
獲取多個鍵值:MGET | MGET key [key ...] 例如:MGET key1 key2 |
設(shè)置多個鍵值:MSET | MSET key value [key value ...] 例如:MSET key1 1 key2 "hello redis" |
二進制指定位置值:GETBIT | GETBIT key offset 例如:GETBIT key1 2 ,key1為hello 返回 1,返回的值只有0或1,當(dāng)key不存在或超出實際長度時為0 |
設(shè)置二進制位置值:SETBIT | SETBIT key offset value ,返回該位置的舊值 |
二進制是1的個數(shù):BITCOUNT | BITCOUNT key [start end] ,start 、end為開始和結(jié)束字節(jié) |
位運算:BITOP | BITOP operation destkey key [key ...] ,operation支持AND、OR、XOR、NOT |
偏移:BITPOS | BITPOS key bit [start] [end] |
二:散列類型(hash)
函數(shù) | 語法 |
---|---|
設(shè)置單個:HSET | HSET key field value,不存在時返回1,存在時返回0,沒有更新和插入之分 |
設(shè)置多個:HMSET | HMSET key field value [field value ...] |
讀取單個:HGET | HGET key field,不存在是返回nil |
讀取多個:HMGET | HMGET key field [field ...] |
讀取全部:HGETALL | HGETALL key,返回時字段和字段值的列表 |
判斷字段是否存在:HEXISTS | HEXISTS key field,存在返回1 ,不存在返回0 |
字段不存在時賦值:HSETNX | HSETNX key field value,與hset命令不同,hsetnx是鍵不存在時設(shè)置值 |
增加數(shù)字:HINCRBY | HINCRBY key field increment ,返回增加后的數(shù),不是整數(shù)時會提示錯誤 |
刪除字段:HDEL | HDEL key field [field ...] ,返回被刪除字段的個數(shù) |
只獲取字段名:HKEYS | HKEYS key ,返回鍵的所有字段名 |
只獲取字段值:HVALS | HVALS key ,返回鍵的所有字段值 |
字段數(shù)量:HLEN | HLEN key ,返回字段總數(shù) |
三:列表類型(list)
內(nèi)部使用雙向鏈表實現(xiàn),所以獲取越接近兩端的元素速度越快,但通過索引訪問時會比較慢
函數(shù) | 語法 |
---|---|
添加左邊元素:LPUSH | LPUSH key value [value ...] ,返回添加后的列表元素的總個數(shù) |
添加右邊元素:RPUSH | RPUSH key value [value ...] ,返回添加后的列表元素的總個數(shù) |
移除左邊第一個元素:LPOP | LPOP key ,返回被移除的元素值 |
移除右邊第一個元素:RPOP | RPOP key ,返回被移除的元素值 |
列表元素個數(shù):LLEN | LLEN key, 不存在時返回0,redis是直接讀取現(xiàn)成的值,并不是統(tǒng)計個數(shù) |
獲取列表片段:LRANGE | LRANGE key start stop,如果start比stop靠后時返回空列表,0 -1 返回整個列表正數(shù)時:start 開始索引值,stop結(jié)束索引值(索引從0開始)負數(shù)時:例如 lrange num -2 -1,-2表示最右邊第二個,-1表示最右邊第一個, |
刪除指定值:LREM | LREM key count value,返回被刪除的個數(shù) count>0,從左邊開始刪除前count個值為value的元素 count<0,從右邊開始刪除前|count|個值為value的元素 count=0,刪除所有值為value的元素 |
索引元素值:LINDEX | LINDEX key index ,返回索引的元素值,-1表示從最右邊的第一位 |
設(shè)置元素值:LSET | LSET key index value |
保留列表片段:LTRIM | LTRIM key start stop,start、top 參考lrange命令 |
一個列表轉(zhuǎn)移另一個列表:RPOPLPUSH | RPOPLPUSH source desctination ,從source列表轉(zhuǎn)移到desctination列表,該命令分兩步看,首先source列表RPOP右移除,再desctination列表LPUSH |
四:集合類型(set)
集合類型值具有唯一性,常用操作是向集合添加、刪除、判斷某個值是否存在,集合內(nèi)部是使用值為空的散列表實現(xiàn)的。
函數(shù) | 語法 |
---|---|
添加元素:SADD | SADD key member [member ...] ,向一個集合添加一個或多個元素,因為集合的唯一性,所以添加相同值時會被忽略。返回成功添加元素的數(shù)量。 |
刪除元素:SREM | SREM key member [member ...] 刪除集合中一個或多個元素,返回成功刪除的個數(shù)。 |
獲取全部元素:SMEMBERS | SMEMBERS key ,返回集合全部元素 |
值是否存在:SISMEMBER | SISMEMBER key member ,如果存在返回1,不存在返回0 |
差運算:SDIFF | SDIFF key [key ...] ,例如:集合A和集合B,差集表示A-B,在A里有的元素B里沒有,返回差集合;多個集合(A-B)-C |
交運算:SINTER | SINTER key [key ...],返回交集集合,每個集合都有的元素 |
并運算:SUNION | SUNION key [key ...],返回并集集合,所有集合的元素 |
集合元素個數(shù):SCARD | SCARD key ,返回集合元素個數(shù) |
集合運算后存儲結(jié)果 | SDIFFSTROE destination key [key ...] ,差運算并存儲到destination新集合中SINTERSTROE destination key [key ...],交運算并存儲到destination新集合中SUNIONSTROE destination key [key ...],并運算并存儲到destination新集合中 |
隨機獲取元素:SRANDMEMGER | SRANDMEMBER key [count],根據(jù)count不同有不同結(jié)果,count大于元素總數(shù)時返回全部元素count>0 ,返回集合中count不重復(fù)的元素count<0,返回集合中count的絕對值個元素,但元素可能會重復(fù) |
彈出元素:SPOP | SPOP key [count] ,因為集合是無序的,所以spop會隨機彈出一個元素 |
五:有序集合類型 zset(sorted set:有序集合)
Redis zset 和 set 一樣也是string類型元素的集合,且不允許重復(fù)的成員。
不同的是每個元素都會關(guān)聯(lián)一個double類型的分數(shù)。
redis正是通過分數(shù)來為集合中的成員進行從小到大的排序。zset的成員是唯一的,但分數(shù)(score)卻可以重復(fù)。
函數(shù) | 語法 |
---|---|
添加集合元素:ZADD | ZADD key [NX|XX] [CH] [INCR] score member [score member ...],不存在添加,存在更新。 |
獲取元素分數(shù):ZSCORE | ZSCORE key member ,返回元素成員的score 分數(shù) |
元素小到大:ZRANGE | ZRANGE key start top [WITHSCORES] ,參考LRANGE ,加上withscores 返回帶元素,即元素,分數(shù)當(dāng)分數(shù)一樣時,按元素排序 |
元素大到小:ZREVRANGE | ZREVRANGE key start [WITHSCORES] ,與zrange區(qū)別在于zrevrange是從大到小排序 |
指定分數(shù)范圍元素:ZRANGEBYSCORE | ZRANGEBYSCORE key min max [WITHSCORE] [LIMIT offest count]返回從小到大的在min和max之間的元素,( 符號表示不包含,例如:80-100,(80 100,withscore返回帶分數(shù)limit offest count 向左偏移offest個元素,并獲取前count個元素 |
指定分數(shù)范圍元素:ZREVRANGESCORE | ZREVRANGEBYSCORE key max min [WITHSCORE] [LIMIT offest count]與zrangebyscore類似,只不過該命令是從大到小排序的。 |
增加分數(shù):ZINCRBY | ZINCRBY key increment member ,注意是增加分數(shù),返回增加后的分數(shù);如果成員不存在,則添加一個為0的成員。 |
感謝你能夠認真閱讀完這篇文章,希望小編分享的“redis中數(shù)據(jù)類型命令有哪些”這篇文章對大家有幫助,同時也希望大家多多支持創(chuàng)新互聯(lián)成都網(wǎng)站設(shè)計公司,關(guān)注創(chuàng)新互聯(lián)成都網(wǎng)站設(shè)計公司行業(yè)資訊頻道,更多相關(guān)知識等著你來學(xué)習(xí)!
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、網(wǎng)站設(shè)計器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。
文章名稱:redis中數(shù)據(jù)類型命令有哪些-創(chuàng)新互聯(lián)
標題路徑:http://jinyejixie.com/article30/jjdso.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供做網(wǎng)站、外貿(mào)建站、面包屑導(dǎo)航、標簽優(yōu)化、企業(yè)網(wǎng)站制作、Google
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)