集合(Set)数据类型
简介集合的特点是唯一性、无序性。集合可以进行求并集、交集和差集。在Redis中,一个集合最多可容纳2^23-1个成员。
集合的特点是唯一性、无序性。集合可以进行求并集、交集和差集。在Redis中,一个集合最多可容纳2^23-1个成员。
相关命令
SADD、SISMEMBER、SREM、SCARD、SMEMBERS、SSCAN、SUNION、SUNIONSTORE、SINTER、SINTERSTORE、SDIFF、SDIFFSTORE
操作
1、使用SADD命令向集合中添加元素
127.0.0.1:6379> SADD set_1 "abc"
(integer) 1
127.0.0.1:6379> SADD set_1 "def"
(integer) 1
2、使用SISMEMBER命令判断一个元素是否在集合中
127.0.0.1:6379> SISMEMBER set_1 "abc"
(integer) 1
127.0.0.1:6379> SISMEMBER set_1 "abcd" #不在集合中就返回0
(integer) 0
3、使用SREM命令从集合中移除元素
127.0.0.1:6379> SREM set_1 "def"
(integer) 1
127.0.0.1:6379> SREM set_1 "def" #如果不存在就返回0
(integer) 0
4、使用SCARD命令获取集合中成员的数量
127.0.0.1:6379> SCARD set_1
(integer) 1
5、使用SMEMBERS命令获取集合中的所有元素
127.0.0.1:6379> SMEMBERS set_1
1) "abc"
注意:当一个集合中的元素很多的时候,使用SMEMBERS命令会阻塞服务器。所以不能使用SMEMBERS命令,而推荐使用SSCAN命令。
6、使用SSCAN命令来迭代集合中的元素(用法类似于HSCAN命令)
127.0.0.1:6379> SSCAN set_1 0
1) "0"
2) 1) "abc"
集合的并集、交集、差集
SUNION、SUNIONSTORE:计算集合的并集
SINTER、SINTERSTORE:计算集合的交集
SDIFF、SDIFFSTORE:计算集合的差集
没有STORE结尾的命令只返回相应操作的结果集合,带有STORE的命令则会将结果存储到一个指定的键中。
准备数据:
127.0.0.1:6379> SADD set_2 1 2 3 4 5 #集合set_2
(integer) 5
127.0.0.1:6379> SADD set_3 4 5 6 7 8 #集合set_3
(integer) 5
127.0.0.1:6379> SMEMBERS set_2
1) "1"
2) "2"
3) "3"
4) "4"
5) "5"
127.0.0.1:6379> SMEMBERS set_3
1) "4"
2) "5"
3) "6"
4) "7"
5) "8"
7、SUNION、SUNIONSTORE命令求并集
127.0.0.1:6379> SUNION set_2 set_3
1) "1"
2) "2"
3) "3"
4) "4"
5) "5"
6) "6"
7) "7"
8) "8"
127.0.0.1:6379> SUNIONSTORE set_4 set_2 set_3
(integer) 8
127.0.0.1:6379> SMEMBERS set_4
1) "1"
2) "2"
3) "3"
4) "4"
5) "5"
6) "6"
7) "7"
8) "8"
8、SINTER、SINTERSTORE命令求交集
127.0.0.1:6379> SINTER set_2 set_3
1) "4"
2) "5"
127.0.0.1:6379> SINTERSTORE set_5 set_2 set_3
(integer) 2
127.0.0.1:6379> SMEMBERS set_5
1) "4"
2) "5"
9、SDIFF、SDIFFSTORE命令求差集
127.0.0.1:6379> SDIFF set_2 set_3
1) "1"
2) "2"
3) "3"
127.0.0.1:6379> SDIFFSTORE set_6 set_2 set_3
(integer) 3
127.0.0.1:6379> SMEMBERS set_6
1) "1"
2) "2"
3) "3"
图像梯度计算的是图像变化的速度。对于图像的边缘部分,其灰度值变化较大,梯度值也较大;相反,对于图像中比较平滑的部分,其灰度值变化较小,相应的梯度值也较小。图像梯度计算需要求导数,但是图像梯度一般通过计算像素值的差来得到梯度的近似值(近似导数值)。本节主要介绍Sobel算子、Scharr算子、Laplacian算子和Canny算子的使用.
图标组件是展示图标的组件,但是再Flutter中,Icon组件是只是起一个展示效果,不能进行交互,如果要实现交互,就需要使用图标按钮IconButton组件。
网页扫描二维码库:Html5-Qrcode,官网地址:https://scanapp.org/html5-qrcode-docs/
某些时候在寻找某个接口反映较慢的排除方法,除了从网络和服务器的硬件上面排除外,可能还需要我们通过PHP-FPM来排查问题。所以本文我们将说明如何通过PHP-FPM来查询慢日志,帮我们来排查相关问题。
迪米特法则(Law of Demeter,LoD)又叫作最少知识原则(Least Knowledge Principle,LKP),产生于 1987 年美国东北大学(Northeastern University)的一个名为迪米特(Demeter)的研究项目,由伊恩·荷兰(Ian Holland)提出,被 UML 创始者之一的布奇(Booch)普及,后来又因为在经典著作《程序员修炼之道》(The Pragmatic Programmer)提及而广为人知。
快速生成表格
Electron页面跳转、浏览器打开链接和打开新窗口
Docker编译镜像出现:fetch http://dl-cdn.alpinelinux.org/alpine/v3.12/main/x86_64/APKINDEX.tar.gz
ERROR: http://dl-cdn.alpinelinux.org/alpine/v3.12/main: temporary error (try again later)
WARNING: Ignoring APKINDEX.2c4ac24e.tar.gz: No such file or directory问题
在Mac电脑中,如何对Git的用户名和密码进行修改呢?起初不懂Mac,所以整了很久,本文将记录如何对这个进行操作,以便后期使用。
在使用Git的过程中,不想每次都输入用户名和密码去拉取代码,所以就需要保存这些信息,那么既然有保存了,就必须有清除功能。