Redis SINTERSTORE命令的作用与使用方法
SINTERSTORE命令是Redis的一种集合操作命令,该命令用于求两个或多个集合的交集,并将结果保存到新的集合中。具体来说,这个命令的作用是将给定的所有集合的交集添加到一个新的集合中。
使用方法
SINTERSTORE的基本语法如下:
SINTERSTORE destination key [key ...]
其中,destination是新集合的名称,key是一个或多个现有集合的名称。使用此命令时,必须提供至少两个集合名称。如果提供的集合为空,则结果集合为空,因此该命令不会产生任何输出。
Redis使用示例
假设我们有三个集合,分别是Set1、Set2和Set3,集合中的值分别为{"apple", "banana", "pear", "orange"}、{"apple", "banana", "kiwi", "peach"}和{"apple", "peach", "grape"},则可以通过以下命令获得这三个集合的交集:
SINTERSTORE Set4 Set1 Set2 Set3
执行该命令后,现在有一个新的集合Set4,其中仅包含"apple"。如果要获得交集,并将其发送到客户端,可以使用以下命令:
SMEMBERS Set4
该命令将输出Set4集合中的所有元素:
1) "apple"
此外,还可以在Redis事务中使用SINTERSTORE命令,例如:
MULTI
SINTERSTORE Set4 Set1 Set2 Set3
SMEMBERS Set4
EXEC
此时,结果将一起输出:
1) (integer) 1
2) 1) "apple"