Redis 鍊錶結構 和 常用命令

2022-06-30 02:12:16 字數 2658 閱讀 7922

redis 資料結構 --鍊錶(linked-list)

命令說明

備註lpush key node1 [node2 ...]

把節點 node1 加入到 鍊錶最左邊

如果是 node1、node2 ....noden 這樣加入,那麼鍊錶開頭從左到右的順序是 noden ... node2、node1

rpush key nodel [dode2 ...]

把節點 node1 加入到 鍊錶最右邊

如果是 nodel、node2 .... noden 這樣加入,那麼鍊錶結尾從左到右的順序是 node1、node2...noden

lindex key index

讀取下標為 index 的節點

返回節點字串,從0開始算

llen key

求鍊錶的長度

返回鍊錶節點數

lpop key

刪除左邊第乙個節點,並將其返回

--linsert key [befor after] piovt

插入乙個節點 node ,並且可以指定在值為pivot的節點的前面(before)或者 後面 (after)

如果 list 不存在,則報錯,如果沒有值為對應pivot的,也會插入失敗返回 -1

lpushx list node

如果存在key為list的鍊錶,則插入節點node,並且作為從左到右的 第乙個節點

如果list 不存在 則失敗

rpushx list node

如果存在key為 list 的鍊錶,則插入節點node,並且作為從左到右的 最後乙個節點

如果 list 不存在 則失敗

lrange list start end

獲取鍊錶 list 從 start下標 到 end下標的節點值

包含 start 和 end 下標的值

lrem list count value

如果 count 為 0,則刪除所有值等於value的節點,如果count 不是 0,則先對count取絕對值,假設記為abs,然後從左到右刪除不大於 abs 個 等於 value的節點

注意,count 為整數,如果是負數,則redis會先求取其絕對值,然後傳遞到後台操作

lset key index node

設定列表下標為index的節點的值為node

--ltrim key start stop

修剪鍊錶,只保留從start 到 stop 的區間的節點,其餘的都刪除掉

包含 start 和 end 的下標的節點會保留

c:\users\oukele>redis-cli

127.0.0.1:6379> lpush role oukele dakele xiaokele

(integer) 3

127.0.0.1:6379> lindex role 0

"xiaokele"

127.0.0.1:6379> rpush role oukele1

(integer) 4

127.0.0.1:6379> lindex role 0

"xiaokele"

127.0.0.1:6379> llen role

(integer) 4

127.0.0.1:6379> lpop role

"xiaokele"

127.0.0.1:6379> rpop role

"oukele1"

127.0.0.1:6379> llen role

(integer) 2

127.0.0.1:6379> linsert role before dakele dadakele

(integer) 3

127.0.0.1:6379> linsert role after dakele dadadakele

(integer) 4

127.0.0.1:6379> lrange role 0 10

1) "dadakele"

2) "dakele"

3) "dadadakele"

4) "oukele"

127.0.0.1:6379> lpush role lala wuwu oooo

(integer) 7

127.0.0.1:6379> lrange role 0 10

1) "oooo"

2) "wuwu"

3) "lala"

4) "dadakele"

5) "dakele"

6) "dadadakele"

7) "oukele"

127.0.0.1:6379> lrem role 3 dakele

(integer) 1

127.0.0.1:6379> lrange role 0 10

1) "oooo"

2) "wuwu"

3) "lala"

4) "dadakele"

5) "dadadakele"

6) "oukele"

127.0.0.1:6379> ltrim role 3 6

ok127.0.0.1:6379> lrange role 0 10

1) "dadakele"

2) "dadadakele"

3) "oukele"

127.0.0.1:6379>

Redis常用命令

1 keys 返回滿足給定pattern的所有key。例如 keys 返回所有鍵 2 exists 確認乙個key是否存在。例如 exists age 3 del 刪除指定key。例如 del age 4 expire 設定乙個key的過期時間。例如 expire age 100 單位 秒 5 pe...

redis常用命令

redis cli p 6079 登陸redis,埠為6079 auth psssword 如果redis帶密碼,則執行上邊一行,password替換為你的密碼。src redis cli p 6380 keys wei xargs src redis cli p 6380 del 批量刪除埠為63...

Redis常用命令

啟動 redis 服務 src redis server或者src redis server redis.conf src redis server redis.conf 1 log.log 2 errlog.log 1為標準輸出,2為錯誤輸出 將 redis 作為 linux 服務隨機啟動 vi ...