Redis 基礎資料結構

2021-08-05 21:28:47 字數 2338 閱讀 7082

基礎資料型別(5種):string(字串)、hash(雜湊)、list(列表)、set(集合)、zset(有序集合)

set key_name value 命令用於設定給定key的值,如果key已經儲存其它值,則會覆蓋舊值,且與型別無關

get key_name 命令用於獲取指定key的值,如果key不存在,則返回nil,若key儲存的值不是字串型別,則返回乙個錯誤

getrange key_name startindex endindex 命令用於獲取儲存在指定key中字串的子字串,包含startindex、endindex

getset key_name value 命令用於設定指定key的值,並返回key的舊值,當key不存在時返回nil,當key存在但不是字串型別時,返回乙個錯誤

mget key1 key2 … keyn 命令用於獲取全部給定key的值,若有某個key不存在則對應的值返回nil,整個結果集用列表表示

string 型別最多可儲存512m的內容

linsert key_name before/after existing_value new_value 命令用於在列表的元素前或者後插入元素,當指定元素不存在於列表中時,不執行任何操作,當列表不存在時,被視為空列表,不執行任何操作,如果key不是列表型別,返回乙個錯誤。如果命令執行成功,返回插入操作完成之後,列表的長度,若果沒有找到指定元素,返回-1,如果key不存在或為空列表,返回0

lindex key index 通過索引獲取列表中的元素

llen key 獲取列表長度

lpop key 移出並獲取列表的第乙個元素

lpush key value1 value2 將乙個或多個值插入到列表頭部

rpush key value1 value2 將乙個或多個值插入到列表尾部

lrange key startindex stopindex 獲取指定區間內的元素,0 是第乙個元素,-1是倒數第乙個元素

lrem key count value 移出列表中與引數value相等的元素

count > 0 : 從表頭開始向表尾搜尋,移除與value相等的元素,數量為count

count < 0 : 從表尾開始向表頭搜尋,移除與value相等的元素,數量為count的絕對值

count = 0 : 移除表中所有與value相等的值

ltrim key startindex stopindex 讓列表只保留指定區間內的元素,不在指定區間之內的元素都將被刪除

rpop key 命令用於移除並返回最後乙個元素

lset key index value 通過索引來設定元素的值

hdel key_name field1 … fieldn 命令用於刪除雜湊表key中的乙個或多個指定字段,返回被成功刪除的字段數量

hexists key_name field_name 命令用於檢視雜湊表的指定字段是否存在,如果雜湊表含有給定欄位則返回1,若雜湊表不含有給定欄位或key不存在則返回0

hget key_name field_name 命令用於返回雜湊表中指定欄位的值,若給定的字段或key不存在時,返回nil

hgetall key_name 命令用於返回雜湊表中所有的字段和值,在返回值裡,緊跟每個欄位名之後是字段的值,所以返回值的長度是雜湊表大小的兩倍,若key不存在則返回空列表

hkeys key_name 命令用於返回雜湊表中所有的欄位名

hlen key_name 命令用於獲取雜湊表中字段的數量

hmget key_name field1 … fieldn 用於獲取全部指定欄位的值

Redis 基礎資料結構

redis有5種基礎資料結構,分別是 string list hash set zset。1 string 字串 字串string是redis最簡單的資料結構,內部表示的就是乙個字元陣列。儲存值 set key value 獲取值 get key redis可以對多個字串進行批量讀寫。批量儲存 ms...

Redis 基礎資料結構(一)

前言 redis 有5種基礎資料結構,分別是string 字串 list 列表 hash 字典 set 集合 zset 有序集合 而redis所有的資料結構都有乙個唯一的key字串作為名稱。然後通過這個唯一的key來獲取相應的value,不同資料結構的差異在於value對應底層的資料結構不同。對re...

Redis基礎 命令 資料結構

redis的字串是動態字串,內部結構類似arraylist,採用預分配冗餘空間來減少記憶體的頻繁分配。其內部的array的實際分配空間capacity一般要高於實際字串的長度len 其常用命令如下 1.set name value 2.get name 3.mset name1 value1 nam...