温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Redis常用命令(二)列表键、无序集合键

发布时间:2020-07-21 00:32:07 阅读:712 作者:daibaiyang119 栏目:关系型数据库
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

### 列表键的元素基本类型为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

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI

开发者交流群×