Redis資料型別 List列表型別

2022-07-07 21:18:16 字數 1500 閱讀 5847

介紹:

列表型別(list)可以儲存乙個有序的字串列表,常用的操作時向列表兩端新增元素,或者或者列表的某乙個片段。

列表型別內部是使用雙向鍊錶實現的。所以向列表兩端新增元素的時間複雜度為o(1),獲取越接近兩端的元素速度就越快。不過使用鍊錶的代價是通過索引訪問元素比較慢,列表也適合用來記錄日誌,可以保證加入新日誌的速度也不會受到已有日誌數量的影響。乙個列表型別鍵最多能容納2的32次方-1個值

命令:

命令說明

示例lpush key value value1...

向列表左邊增加元素,返回值表示增加元素後列表的長度。

lpush num 1 2

rpush key value value1...

向列表右邊增加元素,返回值表示增加元素後列表的長度。

rpush num 3 4

lpop key

從左邊彈出元素,第一步是將列表左邊的元素從列表中移除,第二步是返回被移除的元素值

lpop num

rpop key

從右邊彈出元素,第一步是將列表左邊的元素從列表中移除,第二步是返回被移除的元素值

rpop num

llen key

獲取列表中元素的個數,鍵不存在時返回0,時間複雜度o(1)

llen num

lrange key start stop

獲取列表中的片段,不對獲取的片段刪除,返回索引從start到stop之間的所有元素(包括兩端的元素),支援負值

lrange num 1 2

lrem key count value

刪除列表中前count個值為value的元素,返回是實際刪除的元素個數。count>0從左邊開始刪除,count<0從右邊開始刪除,count=0刪除所有值為value的元素

lrem key 1 1

lindex key index

返回指定索引的元素,索引從0開始,如果index為負數,則從最右邊開始

lindex key 1

lset key index value

將索引為index的元素賦值為value

lset key 1 100

ltrim key start end

刪除指定索引範圍之外的所有元素

ltrim key 1 2

linsert key before|after pivot value

首先在列表中從坐到右查詢值為pivot的元素,然後根據第二次引數before或者after來決定將value插入到元素的前面還是後面,返回列表的元素的個數

linsert key before 100 99 

rpoplpush source destination

先執行rpop命令再執行lpush命令,先從source列表右邊彈出乙個元素,然後將其加入到destination列表型別鍵的左邊,返回這個元素的值

rpoplpush from to

redis資料型別Hash表List列表

list 列表 redis 的 list 是乙個字元佇列 先進後出 乙個 key 可以有多個值 192.168.4.51 6351 lpush website a b c d e integer 5 192.168.4.51 6351 type website list 192.168.4.51 6...

redis基本資料型別(list列表)

在不同程式語言裡,關於求範圍函式的一致性 超過範圍的下標 儲存有序的字串 從左到右 元素可以重複。最大儲存數量2 32 1 40億左右 比如,lrem list 2 hello 會從存於 list 的列表裡移除最後兩個出現的 hello 需要注意的是,如果list裡沒有存在key就會被當作空list...

Redis資料型別 List

lpush 在對應的list頭部新增元素 127.0.0.1 6379 lpush mylist value1 integer 1 127.0.0.1 6379 lpush mylist value2 integer 2 列印出來看一下 127.0.0.1 6379 lrange mylist 0 ...