iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >redis基本操作 —— set
  • 822
分享到

redis基本操作 —— set

redis基本操作——set 2021-08-30 03:08:44 822人浏览 无得
摘要

一、向集合添加一个或多个成员   命令:sadd   格式:sadd key member1 [member2] 127.0.0.1:6379> sadd set_key m1 (integer) 1 127.0.0.1:637

redis基本操作 —— set

一、向集合添加一个或多个成员

  命令:sadd

  格式:sadd key member1 [member2]

127.0.0.1:6379> sadd set_key m1
(integer) 1
127.0.0.1:6379> sadd set_key m2 m3
(integer) 2

二、返回集合中的所有成员

  命令:smembers

  格式:smembers key

127.0.0.1:6379> smembers set_key
1) "m3"
2) "m2"
3) "m1"

 三、移除并返回集合中的一个随机元素

  命令:spop

  格式:spop key

127.0.0.1:6379> sadd set_key m1 m2 m3 m4 m5 m6 m7 m8 m9
(integer) 9
127.0.0.1:6379> smembers set_key
1) "m8"
2) "m2"
3) "m3"
4) "m6"
5) "m1"
6) "m5"
7) "m4"
8) "m7"
9) "m9"
127.0.0.1:6379> spop set_key
"m5"
127.0.0.1:6379> smembers set_key
1) "m6"
2) "m1"
3) "m4"
4) "m7"
5) "m8"
6) "m3"
7) "m2"
8) "m9"

四、移除集合中一个或多个成员

  命令:srem

  格式:srem set_key member1 [member2]

127.0.0.1:6379> smembers set_key
1) "m6"
2) "m1"
3) "m4"
4) "m7"
5) "m8"
6) "m3"
7) "m2"
8) "m9"
127.0.0.1:6379> srem set_key m1 m2 m3
(integer) 3
127.0.0.1:6379> smembers set_key
1) "m8"
2) "m4"
3) "m6"
4) "m9"
5) "m7"
127.0.0.1:6379> srem set_key m1 m2 m3
(integer) 0
127.0.0.1:6379> smembers set_key
1) "m8"
2) "m4"
3) "m6"
4) "m9"
5) "m7"

五、判断 member 元素是否是集合 key 的成员

  命令:sismember

  格式:sismember key member

127.0.0.1:6379> smembers set_key
1) "m8"
2) "m4"
3) "m6"
4) "m9"
5) "m7"
127.0.0.1:6379> sismember set_key m8
(integer) 1
127.0.0.1:6379> sismember set_key m1
(integer) 0

六、获取集合的成员数

  命令:scard

  格式:scard key

127.0.0.1:6379> smembers set_key
1) "m8"
2) "m4"
3) "m6"
4) "m9"
5) "m7"
127.0.0.1:6379> scard set_key
(integer) 5

七、返回给定所有集合的差集

  命令:sdiff

  格式:sdiff key1 [key2] ...

127.0.0.1:6379> sadd k1 m1 m2 m3
(integer) 3
127.0.0.1:6379> sadd k2 m3 m4 m5
(integer) 3
127.0.0.1:6379> sdiff k1
1) "m2"
2) "m3"
3) "m1"
127.0.0.1:6379> sdiff k1 k2
1) "m2"
2) "m1"
127.0.0.1:6379> sdiff k1 k2
1) "m2"
2) "m1"
127.0.0.1:6379> sdiff k2 k1
1) "m4"
2) "m5"
127.0.0.1:6379> sadd k3 m5 m6 m7
(integer) 3
127.0.0.1:6379> sdiff k1 k2 k3
1) "m2"
2) "m1"
127.0.0.1:6379> sdiff k2 k1 k3
1) "m4"

八、返回给定所有集合的差集并存储在 destination 中

  命令:sdiffstore

  格式:sdiffstore destination key1 [key2] ...

127.0.0.1:6379> sadd k1 m1 m2 m3
(integer) 3
127.0.0.1:6379> sadd k2 m3 m4 m5
(integer) 3
127.0.0.1:6379> sadd k3 m5 m6 m7
(integer) 3
127.0.0.1:6379> sdiffstore d1 k1 k2
(integer) 2
127.0.0.1:6379> smembers d1
1) "m2"
2) "m1"
127.0.0.1:6379> sdiffstore d2 k2 k1
(integer) 2
127.0.0.1:6379> smembers d2
1) "m4"
2) "m5"
127.0.0.1:6379> sdiff d1 k3
1) "m2"
2) "m1"
127.0.0.1:6379> sdiff k1 k2 k3
1) "m2"
2) "m1"
127.0.0.1:6379> sdiff d2 k3
1) "m4"
127.0.0.1:6379> sdiff k2 k1 k3
1) "m4"

九、返回给定所有集合的交集

  命令:sinter

  格式:sinter key1 [key2] ...

127.0.0.1:6379> sadd k1 m1 m2 m3
(integer) 3
127.0.0.1:6379> sadd k2 m2 m3 m4
(integer) 3
127.0.0.1:6379> sadd k3 m3 m4 m5
(integer) 3
127.0.0.1:6379> sinter k1 k2
1) "m3"
2) "m2"
127.0.0.1:6379> sinter k1 k2 k3
1) "m3"
127.0.0.1:6379> sinter k2 k1
1) "m3"
2) "m2"
127.0.0.1:6379> sinter k2 k1 k3
1) "m3"

十、返回给定所有集合的交集并存储在 destination 中

  命令:sinterstore

  格式:sinterstore destination key1 [key2] ...

127.0.0.1:6379> sadd k1 m1 m2 m3
(integer) 3
127.0.0.1:6379> sadd k2 m2 m3 m4
(integer) 3
127.0.0.1:6379> sadd k3 m3 m4 m5
(integer) 3
127.0.0.1:6379> sinter k1 k2
1) "m3"
2) "m2"
127.0.0.1:6379> sinter k1 k2 k3
1) "m3"
127.0.0.1:6379> sinter k2 k1
1) "m3"
2) "m2"
127.0.0.1:6379> sinter k2 k1 k3
1) "m3"
127.0.0.1:6379> sinterstore d1 k1 k2
(integer) 2
127.0.0.1:6379> smembers d1
1) "m2"
2) "m3"
127.0.0.1:6379> sinterstore d2 k1 k2 k3
(integer) 1
127.0.0.1:6379> smembers d2
1) "m3"

十一、将 member 元素从 source 集合移动到 destination 集合

  命令:smove

  格式:smove src des members

127.0.0.1:6379> sadd src m1 m2 m3
(integer) 3
127.0.0.1:6379> sadd des m4 m5 m6
(integer) 3
127.0.0.1:6379> smembers src
1) "m3"
2) "m2"
3) "m1"
127.0.0.1:6379> smembers des
1) "m4"
2) "m6"
3) "m5"
127.0.0.1:6379> smove src des m1
(integer) 1
127.0.0.1:6379> smembers src
1) "m3"
2) "m2"
127.0.0.1:6379> smembers des
1) "m4"
2) "m6"
3) "m1"
4) "m5"
127.0.0.1:6379> smove src des m0
(integer) 0
127.0.0.1:6379> smembers src
1) "m3"
2) "m2"
127.0.0.1:6379> smembers des
1) "m4"
2) "m6"
3) "m1"
4) "m5"

十二、返回集合中一个或多个随机数

  命令:srandmember

  格式:srandmember key [count]

127.0.0.1:6379> sadd rand_set m1 m2 m3 m4 m5 m6 m7 m8
(integer) 8
127.0.0.1:6379> smembers rand_set
1) "m8"
2) "m2"
3) "m3"
4) "m6"
5) "m1"
6) "m5"
7) "m4"
8) "m7"
127.0.0.1:6379> srandmember rand_set
"m8"
127.0.0.1:6379> srandmember rand_set 
"m6"
127.0.0.1:6379> srandmember rand_set 3
1) "m8"
2) "m5"
3) "m7"

十三、返回所有给定集合的并集

  命令:suNIOn

  格式:sunion key1 [key2] ...

127.0.0.1:6379> sadd k1 m1 m2
(integer) 2
127.0.0.1:6379> sadd k2 m3 m4
(integer) 2
127.0.0.1:6379> sadd k3 m1 m3 m5 m6
(integer) 4
127.0.0.1:6379> sunion k1 k2
1) "m4"
2) "m3"
3) "m2"
4) "m1"
127.0.0.1:6379> sunion k1 k3
1) "m6"
2) "m1"
3) "m2"
4) "m3"
5) "m5"
127.0.0.1:6379> sunion k1 k2 k3
1) "m2"
2) "m3"
3) "m6"
4) "m1"
5) "m5"
6) "m4"

十四、所有给定集合的并集存储在 destination 集合中

  命令:sunionstore

  格式:sunionstore destination key1 [key2] ...

127.0.0.1:6379> sadd k1 m1 m2
(integer) 2
127.0.0.1:6379> sadd k2 m3 m4
(integer) 2
127.0.0.1:6379> sadd k3 m1 m3 m5 m6
(integer) 4
127.0.0.1:6379> sunion k1 k2
1) "m4"
2) "m3"
3) "m2"
4) "m1"
127.0.0.1:6379> sunion k1 k3
1) "m6"
2) "m1"
3) "m2"
4) "m3"
5) "m5"
127.0.0.1:6379> sunion k1 k2 k3
1) "m2"
2) "m3"
3) "m6"
4) "m1"
5) "m5"
6) "m4"
127.0.0.1:6379> sunionstore d1 k1 k2
(integer) 4
127.0.0.1:6379> smembers d1
1) "m4"
2) "m3"
3) "m2"
4) "m1"
127.0.0.1:6379> sunionstore d2 k1 k2 k3
(integer) 6
127.0.0.1:6379> smembers d2
1) "m2"
2) "m3"
3) "m6"
4) "m1"
5) "m5"
6) "m4"

十五、迭代集合中的元素

  命令:sscan

  格式:sscan key cursor [MATCH pattern] [COUNT count] 

127.0.0.1:6379> sadd set_key m1 m2 m3 member1 member2 member3
(integer) 6
127.0.0.1:6379> sscan set_key 0
1) "0"
2) 1) "member1"
   2) "member3"
   3) "m2"
   4) "m3"
   5) "member2"
   6) "m1"
127.0.0.1:6379> sscan set_key 0 MATCH m*
1) "0"
2) 1) "member1"
   2) "member3"
   3) "m2"
   4) "m3"
   5) "member2"
   6) "m1"
127.0.0.1:6379> sscan set_key 0 MATCH me*
1) "0"
2) 1) "member1"
   2) "member3"
   3) "member2"
127.0.0.1:6379> sscan set_key 0 MATCH me* COUNT 1
1) "1"
2) 1) "member1"
   2) "member3"
127.0.0.1:6379> sscan set_key 0 MATCH me* COUNT 0
(error) ERR syntax error
127.0.0.1:6379> sscan set_key 0 MATCH me* COUNT 3
1) "3"
2) 1) "member1"
   2) "member3"
   3) "member2"

 

参考链接:https://www.runoob.com/Redis/redis-strings.html

 

您可能感兴趣的文档:

--结束END--

本文标题: redis基本操作 —— set

本文链接: https://www.lsjlt.com/news/6458.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • oracle怎么查询当前用户所有的表
    要查询当前用户拥有的所有表,可以使用以下 sql 命令:select * from user_tables; 如何查询当前用户拥有的所有表 要查询当前用户拥有的所有表,可以使...
    99+
    2024-05-14
    oracle
  • oracle怎么备份表中数据
    oracle 表数据备份的方法包括:导出数据 (exp):将表数据导出到外部文件。导入数据 (imp):将导出文件中的数据导入表中。用户管理的备份 (umr):允许用户控制备份和恢复过程...
    99+
    2024-05-14
    oracle
  • oracle怎么做到数据实时备份
    oracle 实时备份通过持续保持数据库和事务日志的副本来实现数据保护,提供快速恢复。实现机制主要包括归档重做日志和 asm 卷管理系统。它最小化数据丢失、加快恢复时间、消除手动备份任务...
    99+
    2024-05-14
    oracle 数据丢失
  • oracle怎么查询所有的表空间
    要查询 oracle 中的所有表空间,可以使用 sql 语句 "select tablespace_name from dba_tablespaces",其中 dba_tabl...
    99+
    2024-05-14
    oracle
  • oracle怎么创建新用户并赋予权限设置
    答案:要创建 oracle 新用户,请执行以下步骤:以具有 create user 权限的用户身份登录;在 sql*plus 窗口中输入 create user identified ...
    99+
    2024-05-14
    oracle
  • oracle怎么建立新用户
    在 oracle 数据库中创建用户的方法:使用 sql*plus 连接数据库;使用 create user 语法创建新用户;根据用户需要授予权限;注销并重新登录以使更改生效。 如何在 ...
    99+
    2024-05-14
    oracle
  • oracle怎么创建新用户并赋予权限密码
    本教程详细介绍了如何使用 oracle 创建一个新用户并授予其权限:创建新用户并设置密码。授予对特定表的读写权限。授予创建序列的权限。根据需要授予其他权限。 如何使用 Oracle 创...
    99+
    2024-05-14
    oracle
  • oracle怎么查询时间段内的数据记录表
    在 oracle 数据库中查询指定时间段内的数据记录表,可以使用 between 操作符,用于比较日期或时间的范围。语法:select * from table_name wh...
    99+
    2024-05-14
    oracle
  • oracle怎么查看表的分区
    问题:如何查看 oracle 表的分区?步骤:查询数据字典视图 all_tab_partitions,指定表名。结果显示分区名称、上边界值和下边界值。 如何查看 Oracle 表的分区...
    99+
    2024-05-14
    oracle
  • oracle怎么导入dump文件
    要导入 dump 文件,请先停止 oracle 服务,然后使用 impdp 命令。步骤包括:停止 oracle 数据库服务。导航到 oracle 数据泵工具目录。使用 impdp 命令导...
    99+
    2024-05-14
    oracle
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作