Redis資料型別list型別常用命令

2021-09-30 14:44:07 字數 1036 閱讀 1862

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

列表型別內部是使用雙向鍊錶實現的,所以列表兩端新增元素是非常快的,獲取越接近兩端的元素速度就越快。

通過列表特點可以模擬棧、佇列

社交**的新鮮事,我們關心的只是最新的內容,使用列表型別儲存,即使新鮮事的總數達到幾千萬個,獲取其中位於list兩端最新的100條資料也是很快的。

列表型別適合用來記錄日誌,可以保證加入新日誌的速度不會受到已有日誌數量的影響

列表型別還可以作為佇列

向列表兩端增加元素

//lpush命令用來向列表左邊增加元素,返回列表長度

lpush key value [value ...]

//rpush命令用來向列表右邊增加元素

rpush key value [value ...]

例子:127.0.0.1:6379> lpush key 1 2 3 4

(integer) 4

從列表兩端彈出元素

//lpop命令從列表左邊取出乙個元素

lpop key

//rpop命令從列表右邊取出乙個元素

rpop key

可以使用上面4個命令模擬棧和佇列的操作。

如果列表模擬棧:

lpush 和  lpop

rpush 和 rpop

如果想列表模擬佇列:

lpush 和 rpop

rpush 和 lpop

總結:只要從不同方向讀,取就是佇列,從相同方向讀與取就是棧。

3. 獲取列表中元素的個數

llen key

當key不存在就會返回0

4. 獲得列表片段

lrange key start stop

例子://獲取列表中所有的值

lrange key 0 -1

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 ...

redis資料型別 List

list 列表 是鍊錶結構,新增或刪除元素是常量時間。list常用命令 lpush key value 從列表左邊新增元素 lpushx key value 從列表左邊新增元素,只有當key存在的時候才會新增,否則不執行。rpush key value 從列表右邊新增元素 rpushx key va...

Redis資料型別 List

list資料型別 lpush key value 新增list資料,value可以為多個值,假如我們使用方法新增 a b c 這個三個value的時候,實際上就執行了三次這個命令,等我們獲取資料的時候就是c b a lpushx key value 新增資料資訊,和lpush命令相反,從尾部開始新增...