lpush:在列表的左邊插入元素,語法:lpush key element [element ...]
。
127.0.0.1:6379> lpush k1 a b c d
(integer) 4
lrange:檢視列表中的元素,語法:lrange key start stop
。
127.0.0.1:6379> lrange k1 0 -1
1) "d"
2) "c"
3) "b"
4) "a"
lpop:從列表的左邊取出乙個元素,語法:lpop key
。
127.0.0.1:6379> lpop k1
"d"127.0.0.1:6379> lpop k1
"c"127.0.0.1:6379> lpop k1
"b"127.0.0.1:6379> lpop k1
"a"
rpush:在列表的右邊插入元素,語法:rpush key element [element ...]
。
127.0.0.1:6379> rpush k1 a b c d
(integer) 4
rpush:從列表的右邊取出乙個元素,語法:rpop key
。
127.0.0.1:6379> rpop k1
"d"127.0.0.1:6379> rpop k1
"c"127.0.0.1:6379> rpop k1
"b"127.0.0.1:6379> rpop k1
"a"
lindex:查詢指定索引的元素,語法:lindex key index
。
127.0.0.1:6379> lpush k1 a b c d
(integer) 4
127.0.0.1:6379> lindex k1 -1
"a"
llen:獲取列表的長度,語法:llen key
。
127.0.0.1:6379> llen k1
(integer) 4
linsert:在指定元素的前面或後面插入元素,語法:linsert key before|after pivot element
。
127.0.0.1:6379> linsert k1 before b x
(integer) 5
127.0.0.1:6379> lrange k1 0 -1
1) "d"
2) "c"
3) "x"
4) "b"
5) "a"
lrem:根據指定個數的指定元素,語法:lrem key count element
。
127.0.0.1:6379> lrange k1 0 -1
1) "a"
2) "c"
3) "b"
4) "a"
5) "d"
6) "c"
7) "x"
8) "b"
9) "a"
127.0.0.1:6379> lrem k1 2 a
(integer) 2
127.0.0.1:6379> lrange k1 0 -1
1) "c"
2) "b"
3) "d"
4) "c"
5) "x"
6) "b"
7) "a"
使用的lrem的注意事項:
lset:設定指定索引位置的元素,語法:lset key index element
。
127.0.0.1:6379> lrange k1 0 -1
1) "y"
2) "x"
3) "c"
4) "c"
5) "a"
127.0.0.1:6379> lset k1 1 o
ok127.0.0.1:6379> lrange k1 0 -1
1) "y"
2) "o"
3) "c"
4) "c"
5) "a"
ltrim:擷取保留列表中指定索引的元素,語法:ltrim key start stop
。
127.0.0.1:6379> lrange k1 0 -1
1) "y"
2) "o"
3) "c"
4) "c"
5) "a"
127.0.0.1:6379> ltrim k1 2 3
ok127.0.0.1:6379> lrange k1 0 -1
1) "c"
2) "c"
lpos:在列表中匹配第乙個找到的元素,可以指定範圍,預設從頭到尾掃瞄。
127.0.0.1:6379> rpush k2 a b c 1 2 3 c c
(integer) 8
127.0.0.1:6379> lpos k2 c
(integer) 2
127.0.0.1:6379> lpos k2 c rank 2
(integer) 6
127.0.0.1:6379> lpos k2 c rank -1
(integer) 7
127.0.0.1:6379> lpos k2 c count 2
1) (integer) 2
2) (integer) 6
列表型別的內部編碼為quicklist
。
127.0.0.1:6379> rpush k3 a b c
(integer) 3
127.0.0.1:6379> object encoding k3
"quicklist"
鍊錶:lpush+rpop,rpush+lpop,反向命令的組合可以實現鍊錶。
棧:lpush+lpop,rpush+rpop,同向命令的組合可以實現棧。
陣列:rpush+lindex+lset,可以實現陣列的功能。
訊息佇列:lpush+brpop。
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命令相反,從尾部開始新增...