Redis常用命令(二)列表鍵 無序集合鍵

2021-09-20 20:56:17 字數 2686 閱讀 1361

### 列表鍵的元素基本型別為string,按照插入順序排序

lpush key value1 value2 ..  # 在列表左側插入資料

lpush name dai liu wang

rpush key value1 value2 ...  # 在列表右側插入資料

rpush name a b c

lpop key  # 移除並返回列表最左端的項

lpop language

rpop key  # 移除並返回列表最右端的項

rpop language

# lpop的阻塞版本,命令會從左到右,訪問給定的各個列表,並彈出首個非空列表最左端的項

# 如果所有列表都為空,那麼客戶端會被阻塞,直到等待超時或者有可彈出的項出現為止。

# 0表示永遠阻塞

blpop key [key ...] timeout

blpop a100 language 5

brpop key [key ....] timeout  # 與blpop相反,命令從左到右執行,彈出首個非空列表最右端的項

brpop a100 language 5

llen key  # 返回列表鍵key的長度

llen language

lindex key index  # 返回列表鍵中指定索引index上的列表項,索引可以是正數或者負數

lindex language 0

linsert key before或after 現有元素 新元素  # 在指定元素的前或後插入新元素

linsert name before a d

linsert name after a e

lrange key start stop  # 返回列表裡指定範圍內的元素,start、stop為元素的下標索引,索引從左側開始,第乙個元素為0,

# 索引可以是負數,表示從尾部開始計數,如-1表示最後乙個元素

lrange name 0 -1

lset key index value  # 將指定索引位置的列表項設定為value,索引從左側開始,第乙個元素為0,

# 索引可以是負數,表示尾部開始計數,如-1表示最後乙個元素

lset name 4 zhao

# 刪除指定元素,將列表中前count次出現的值為value的元素移除

# count > 0: 從頭往尾移除,count < 0: 從尾往頭移除,count = 0: 移除所有

lrem key count value

lrem py12 2 h0  # 從py12列表左側開始刪除2個h0

ltrim key start stop  # 對列表進行修剪,讓列表只保留指定索引範圍內的列表項,索引可以是正數或負數

ltrim user::daiby::timeline 0 4

### set 無序集合,元素為string型別,元素具有唯一性,不重複,說明:對於集合沒有修改操作

sadd key member1 member2 ...  # 新增元素

sadd py10 aaa bbb ccc aaa  --> (integer) 3

smembers key  # 返回所有的元素,當集合比較大時,這個命令可能會造成伺服器阻塞

smembers py10

srem key member1 member2 ...  # 刪除指定元素

srem py10 aaa

sismember key member  # 檢查給定的元素是否存在於集合

sismember friends jack

scard key  # 返回集合包含的元素數量

scard friends

spop key  # 隨機的從集合中移除並返回乙個元素

spop friends

# 如果沒有給定可選的count引數,命令隨機返回集合中的乙個元素,該元素不會被移除

# 如果指定了count,那麼從集合中隨機返回count數量的元素

srandmember key [count]

srandmember friends 3

sdiff key [key...]  # 計算所有給定集合的差集,並返回結果

sadd num1 111 222 333

sadd num2 222 333 444

sdiff num1 num2   --> 111

sdiffstore destkey key [key...]  # 計算所有給定集合的差集,並將結果儲存到destkey

sdiffstore num3 num1 num2

sinter key [key...]  # 計算所有給定集合的交集,並返回結果

sinter num1 num2

sinterstore destkey key [key...]  # 計算所有給定集合的交集,並將結果儲存到destkey

sinterstore num3 num1 num2

sunion key [key...]  # 計算所有給定集合的並集,並返回結果

sunion num1 num2

sunionstore destkey key [key...]  # 計算所有給定集合的並集,並將結果儲存到destkey

sunionstore num3 num1 num2

daibaiyang119

Redis 列表 常用命令

rpush agelist 19 29 39 49 rpush從左往右推送資料 lpush agelist 59 69 lpush從右往左推送資料 lrange agelist 0 10 遍歷列表 也可以說是redis中的集合 llen agelist 查詢列表長度 lindex agelist 2...

Redis列表常用命令

rpush agelist 19 29 39 49 rpush從左往右推送資料 lpush agelist 59 69 lpush從右往左推送資料 lrange agelist 0 10 遍歷列表 也可以說是redis中的集合 llen agelist 查詢列表長度 lindex agelist 2...

redis學習 列表(list)常用命令

lpush 從列表左側頭部新增資料 rpush 從右側尾部新增資料 lpop 從給左側頭部取出乙個元素 rpop 從右側尾部取出乙個元素 lrange 取出指定範圍的元素 lrem 刪除列表指定元素 3 為刪除個數 如果小於0 從右往左刪除,如果等於0,全部刪除 lindex 獲取第幾個座標下的值 ...