LPUSH
LPUSH key value [value …]
可用版本: >= 1.0.0
時間複雜度: O(1)
将一個或多個值
value
插入到清單
key
的表頭,并且各個值
value
按從左到右的順序依次插入。
示範
如果
key
不存在,一個空清單
key
會被建立并執行LPUSH操作。對空清單
key
執行指令
LPUSH key a b c
,清單的值将是
c b a
,等同于執行
LPUSH key a
、
LPUSH key b
和
LPUSH key c
三個指令。執行LPUSH指令後,會傳回清單的長度。
當
key
存在但不是清單類型時,傳回一個錯誤。
在
Redis 2.4
版本以前的LPUSH指令,都隻接受單個
value
值。
LPUSHX
LPUSHX key value
可用版本: >= 2.2.0
時間複雜度: O(1)
當且僅當
key
存在并且是一個清單,才将值
value
插入到清單
key
的表頭。
示範
和LPUSH指令不一樣,當
key
不存在時, LPUSHX指令什麼也不做。
當
key
存在但不是清單類型時, LPUSHX指令會報錯。
LPUSHX指令執行之後,會傳回清單的長度。
RPUSH
RPUSH key value [value …]
可用版本: >= 1.0.0
時間複雜度: O(1)
将一個或多個值
value
插入到清單
key
的表尾,并且各個值
value
按從左到右的順序依次插入。
示範
如果
key
不存在,一個空清單
key
會被建立并執行RPUSH操作。對一個空清單
key
執行
RPUSH key a b c
,清單的值将為
a b c
,等同于執行指令
RPUSH key a
、
RPUSH key b
、
RPUSH key c
。執行RPUSH指令後,會傳回表的長度。
當
key
存在但不是清單類型時,指令會傳回一個錯誤。
RPUSHX
RPUSHX key value
可用版本: >= 2.2.0
時間複雜度: O(1)
當且僅當
key
存在并且是一個清單,才将值
value
插入到清單
key
的表尾。
示範
和RPUSH指令不一樣,當
key
不存在時, RPUSHX指令什麼也不做。
當
key
存在但不是清單類型時, RPUSHX指令會報錯。
RPUSHX指令執行之後,會傳回清單的長度。
LPOP
LPOP key
可用版本: >= 1.0.0
時間複雜度: O(1)
移除并傳回清單
key
的表頭元素。
示範
當
key
不存在時,LPOP指令會傳回
(nil)
。
LPOP指令會傳回清單的表頭元素。
當
key
存在并且不是清單類型時,LPOP指令會報錯。
RPOP
RPOP key
可用版本: >= 1.0.0
時間複雜度: O(1)
移除并傳回清單
key
的表尾元素。
示範
當
key
不存在時,RPOP指令會傳回
(nil)
。
RPOP指令會傳回清單的表尾元素。
當
key
存在并且不是清單類型時,RPOP指令會報錯。