redis基本操作 —— set[通俗易懂]

redis基本操作 —— set[通俗易懂]一、向集合添加一个或多个成员 命令:sadd 格式:sadd key member1 [member2] 127.0.0.1:6379> sadd set_key m1 (integer) 1

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

代码100分

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

  命令:smembers

  格式:smembers key

代码100分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]

代码100分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

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/8082.html

(0)
上一篇 2023-03-07
下一篇 2023-03-08

相关推荐

  • Linux系统环境下MySQL数据库源代码的安装[通俗易懂]

    Linux系统环境下MySQL数据库源代码的安装[通俗易懂]Linux系统环境下MySQL数据库源代码的安装 基本环境:CentOS Linux release 7.8.2003 (Core)、MySQL5.6 一、 安装环境准备 若要在Linux系统下进行M

    2023-03-16
    154
  • oracle order by 排序重复错乱问题

    oracle order by 排序重复错乱问题对于翻页等逻辑必须默认加上order by排序,而且order by的字段如果有重复值,必须指定第二排序字段,如果第二排序字段还有重复值,那必须指定更多的字段,直到所有的排序字段能够指定唯一顺序 ,…

    2023-03-31
    165
  • Python实现二进制数61

    Python实现二进制数61使用二进制有什么好处呢?首先二进制是计算机可以直接处理的数字形式,这是因为在计算机内部使用的是二进制电子元器件,所以使用二进制能够更加高效地进行数值运算和存储。其次,当数据需要在不同的计算机之间传输时,使用二进制能够保证数据的准确性和一致性。

    2023-12-05
    116
  • Docker下安装MySQL[亲测有效]

    Docker下安装MySQL[亲测有效]1:查看MySQL可用版本镜像 docker search mysql 2:拉取MySQL镜像 docker pull mysql:latest(如果要安装指定版本将latest换成版本号即可,此处安

    2023-04-14
    152
  • 用Python Canvas创建视觉效果的Web应用

    用Python Canvas创建视觉效果的Web应用Python是一种非常流行的编程语言,因为它易于学习、灵活且可以用于多种用途,包括Web开发。而Python的Canvas API则是创建交互式Web应用程序的有力工具。在本文中,我们将探索如何使用Python Canvas创建出色的视觉效果,以增强Web应用程序的用户体验。

    2024-01-11
    111
  • Python字典键值对删除方法详解

    Python字典键值对删除方法详解在Python语言中,字典(dictionary)是一种基本的数据结构。字典是由键(key)和值(value)构成的一种无序的集合,键和值之间通过冒号“:”连接。不过,有时候我们需要从字典中删除某些键值对,以满足我们的需求。本文将从多个方面详细阐述Python中删除字典键值对的方法。

    2024-05-10
    70
  • mysql导入sql_MySQL insert

    mysql导入sql_MySQL insert方法一 INSERT INTO table2 (column1, column2, column3, …) SELECT column1, column2, column3, … FROM …

    2023-04-07
    156
  • Python中常用的切片方法

    Python中常用的切片方法在Python中,切片是指通过对序列进行截取操作,从而选取需要的部分。序列可以是字符串、列表、元组等。切片的基本格式如下:

    2024-02-18
    88

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注