1. 程式人生 > 實用技巧 >redis list 操作

redis list 操作

資料型別

redis 列表 (棧, 佇列)

資料容量

單個列表可以儲存 2 的32次方 - 1 個元素 (4294967295, 每個列表超過40億個元素)

操作指令

  • 插入資料
$ lpush key element0 element1 element2 ...
(integer) 4
  • 查詢列表長度
$ llen key
  • 查詢指定位置的元素
$ lindex key index
  • 指定元素之前插入元素
$ linserte key  befor pivot element
  • 指定元素之後插入元素
$ linster key after pivot element
  • 將一個或多個值 從列表頭部插入
$ lpush key element0 element1 ...
$ lpushx key element0 element1 ... 
# 資料依次插入列表頭部[element1, element0, ...]
  • 當key 不存在時 lpush 會建立一個以key命名的 列表,並將elements 插入;lpushx 不會執行任何操作
  • 將一個或多個值從列表末尾插入
$ rpush key element0 element1 ...
$ rpushx key element0 element1 ...
  • 查詢列表中指定範圍的元素
$ lrange key start end
  • 覆蓋指定位置元素
$ lset key index value
  • 切片列表
$ ltrim key start stop 
  • 列表頭pop 元素 空列表定時阻塞
$ blpop key timeout
  • 列表末尾 pop元素 空列表定時阻塞
$ brpop key timeout
  • 從列表1中pop 元素並壓入列表2中
$ brpoplpush source destination timeout

元素從source 列表尾部取出,壓入destination 列表 頭部

  • 從列表取出元素
$ lpop key
$ rpop key

lpop&& rpop 和 brpop&&blpop 之間的區別: 前者不會阻塞程式, 後者會阻塞程式

使用場景

  對於redis 列表來說 可以當成棧和佇列來用。是很方便的棧和佇列的工具。