久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

redis中數據類型命令有哪些

126次閱讀
沒有評論

共計 4218 個字符,預計需要花費 11 分鐘才能閱讀完成。

自動寫代碼機器人,免費開通

這篇文章主要介紹了 redis 中數據類型命令有哪些,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓丸趣 TV 小編帶著大家一起了解一下。

redis 是鍵值對的數據庫,有 5 中主要數據類型:

字符串類型(string),散列類型(hash),列表類型(list),集合類型(set),有序集合類型(zset)

幾個基本的命令:

函數說明 keys * 獲得當前數據庫的所有鍵?exists key [key …]判斷鍵是否存在,返回個數,如果 key 有一樣的也是疊加數 del key [key …]刪除鍵,返回刪除的個數?type key 獲取減值的數據類型(string,hash,list,set,zset)flushall 清空所有數據庫 config [get、set]redis 配置

-inf 負無窮

+inf 正無窮

一:字符串類型(string)

字符串類型是 Redis 的最基本類型,它可以存儲任何形式的字符串。其它的四種類型都是字符串類型的不同形式。

函數語法最基本的命令:GET、SETGET key,SET key value value 如果有空格需要雙引號以示區分整數遞增:INCRINCR key 默認值為 0,所以首先執行命令得到 1,不是整型提示錯誤增加指定的整數:INCRBYINCRBY key increment 整數遞減:DECRDECR key 默認值為 0,所以首先執行命令得到 -1,不是整型提示錯誤減少指定的整數:DECRBYDECRBY key increment 增加指定浮點數:INCRBYFLOATINCRBYFLOAT key increment 與 INCR 命令類似,只不過可以遞增一個雙精度浮點數向尾部追加值:APPENDAPPEND key value redis 客戶端并不是輸出追加后的字符串,而是輸出字符串總長度獲取字符串長度:STRLENSTRLEN key 如果鍵不存在返回 0,注意如果有中文時,一個中文長度是 3,redis 是使用 UTF- 8 編碼中文的獲取多個鍵值:MGETMGET key [key …] 例如:MGET key1 key2 設置多個鍵值:MSETMSET key value [key value …] 例如:MSET key1 1 key2 hello redis 二進制指定位置值:GETBIT

GETBIT key offset 例如:GETBIT key1 2,key1 為 hello 返回 1,返回的值只有 0 或 1,當 key 不存在或超出實際長度時為 0

設置二進制位置值:SETBITSETBIT key offset value,返回該位置的舊值二進制是 1 的個數:BITCOUNTBITCOUNT key [start end],start、end 為開始和結束字節位運算:BITOPBITOP operation destkey key [key …],operation 支持 AND、OR、XOR、NOT 偏移:BITPOSBITPOS key bit [start] [end]

二:散列類型(hash)

函數語法設置單個:HSETHSET key field value,不存在時返回 1,存在時返回 0,沒有更新和插入之分設置多個:HMSETHMSET key field value [field value …]讀取單個:HGETHGET key field,不存在是返回 nil 讀取多個:HMGETHMGET key field [field …]讀取全部:HGETALLHGETALL key,返回時字段和字段值的列表判斷字段是否存在:HEXISTSHEXISTS key field,存在返回 1,不存在返回 0 字段不存在時賦值:HSETNXHSETNX key field value,與 hset 命令不同,hsetnx 是鍵不存在時設置值增加數字:HINCRBYHINCRBY key field increment,返回增加后的數,不是整數時會提示錯誤刪除字段:HDELHDEL key field [field …],返回被刪除字段的個數只獲取字段名:HKEYSHKEYS key,返回鍵的所有字段名只獲取字段值:HVALSHVALS key,返回鍵的所有字段值字段數量:HLENHLEN key,返回字段總數

三:列表類型(list)

內部使用雙向鏈表實現,所以獲取越接近兩端的元素速度越快,但通過索引訪問時會比較慢

函數語法添加左邊元素:LPUSHLPUSH key value [value …],返回添加后的列表元素的總個數添加右邊元素:RPUSHRPUSH key value [value …],返回添加后的列表元素的總個數移除左邊第一個元素:LPOPLPOP key,返回被移除的元素值移除右邊第一個元素:RPOPRPOP key,返回被移除的元素值列表元素個數:LLENLLEN key,不存在時返回 0,redis 是直接讀取現成的值,并不是統計個數獲取列表片段:LRANGE

LRANGE key start stop,如果 start 比 stop 靠后時返回空列表,0 -1 返回整個列表正數時:start 開始索引值,stop 結束索引值(索引從 0 開始)負數時:例如 lrange num -2 -1,- 2 表示最右邊第二個,- 1 表示最右邊第一個,

刪除指定值:LREM

LREM key count value,返回被刪除的個數

count 0,從左邊開始刪除前 count 個值為 value 的元素

count 0,從右邊開始刪除前 |count| 個值為 value 的元素

count=0,刪除所有值為 value 的元素

索引元素值:LINDEXLINDEX key index,返回索引的元素值,- 1 表示從最右邊的第一位設置元素值:LSETLSET key index value 保留列表片段:LTRIMLTRIM key start stop,start、top 參考 lrange 命令一個列表轉移另一個列表:RPOPLPUSH

RPOPLPUSH source desctination,從 source 列表轉移到 desctination 列表,該命令分兩步看,首先 source 列表 RPOP 右移除,再 desctination 列表 LPUSH

四:集合類型(set)

集合類型值具有唯一性,常用操作是向集合添加、刪除、判斷某個值是否存在,集合內部是使用值為空的散列表實現的。

函數語法添加元素:SADD

SADD key member [member …],向一個集合添加一個或多個元素,因為集合的唯一性,所以添加相同值時會被忽略。返回成功添加元素的數量。

刪除元素:SREMSREM key member [member …] 刪除集合中一個或多個元素,返回成功刪除的個數。獲取全部元素:SMEMBERSSMEMBERS key,返回集合全部元素值是否存在:SISMEMBER
 SISMEMBER key member,如果存在返回 1,不存在返回 0 差運算:SDIFFSDIFF key [key …],例如:集合 A 和集合 B,差集表示 A -B,在 A 里有的元素 B 里沒有,返回差集合;多個集合(A-B)- C 交運算:SINTERSINTER key [key …],返回交集集合,每個集合都有的元素并運算:SUNION SUNION key [key …],返回并集集合,所有集合的元素集合元素個數:SCARDSCARD key,返回集合元素個數集合運算后存儲結果

SDIFFSTROE destination key [key …],差運算并存儲到 destination 新集合中 SINTERSTROE destination key [key …],交運算并存儲到 destination 新集合中 SUNIONSTROE destination key [key …],并運算并存儲到 destination 新集合中

隨機獲取元素:SRANDMEMGER

SRANDMEMBER key [count],根據 count 不同有不同結果,count 大于元素總數時返回全部元素 count 0,返回集合中 count 不重復的元素 count 0,返回集合中 count 的絕對值個元素,但元素可能會重復

彈出元素:SPOPSPOP key [count],因為集合是無序的,所以 spop 會隨機彈出一個元素

五:有序集合類型 zset(sorted set:有序集合)

Redis zset 和 set 一樣也是 string 類型元素的集合, 且不允許重復的成員。

不同的是每個元素都會關聯一個 double 類型的分數。

redis 正是通過分數來為集合中的成員進行從小到大的排序。zset 的成員是唯一的, 但分數 (score) 卻可以重復。

函數語法添加集合元素:ZADDZADD key [NX|XX] [CH] [INCR] score member [score member …],不存在添加,存在更新。獲取元素分數:ZSCOREZSCORE key member,返回元素成員的 score 分數元素小到大:ZRANGE

ZRANGE key start top [WITHSCORES],參考 LRANGE,加上 withscores 返回帶元素,即元素,分數當分數一樣時,按元素排序

元素大到?。篫REVRANGEZREVRANGE key start [WITHSCORES],與 zrange 區別在于 zrevrange 是從大到小排序指定分數范圍元素:ZRANGEBYSCORE

ZRANGEBYSCORE key min max [WITHSCORE] [LIMIT offest count]返回從小到大的在 min 和 max 之間的元素,(符號表示不包含,例如:80-100,(80 100,withscore 返回帶分數 limit offest count 向左偏移 offest 個元素,并獲取前 count 個元素

指定分數范圍元素:ZREVRANGESCORE

ZREVRANGEBYSCORE key max min [WITHSCORE] [LIMIT offest count]與 zrangebyscore 類似,只不過該命令是從大到小排序的。

增加分數:ZINCRBYZINCRBY key increment member,注意是增加分數,返回增加后的分數;如果成員不存在,則添加一個為 0 的成員。

感謝你能夠認真閱讀完這篇文章,希望丸趣 TV 小編分享的“redis 中數據類型命令有哪些”這篇文章對大家有幫助,同時也希望大家多多支持丸趣 TV,關注丸趣 TV 行業資訊頻道,更多相關知識等著你來學習!

向 AI 問一下細節

正文完
 
丸趣
版權聲明:本站原創文章,由 丸趣 2023-12-04發表,共計4218字。
轉載說明:除特殊說明外本站除技術相關以外文章皆由網絡搜集發布,轉載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 贡山| 双流县| 丘北县| 富宁县| 乌兰县| 江西省| 韩城市| 辰溪县| 许昌县| 二连浩特市| 贺兰县| 恩平市| 锡林郭勒盟| 耒阳市| 内丘县| 荥阳市| 延长县| 花莲县| 高阳县| 漳平市| 水城县| 梁山县| 招远市| 灵武市| 开远市| 堆龙德庆县| 东山县| 郓城县| 东丰县| 忻城县| 濮阳市| 溧阳市| 祁门县| 方正县| 峨山| 灵山县| 徐州市| 泸定县| 弋阳县| 新营市| 德格县|