Redis Sdiffstore 命令将给定集合之间的差集存储在指定的集合中。如果指定的集合 key 已存在,则会被覆盖。
命令格式
sdiffstore saveDestsetKey setKey1 .... setKey2
测试
del setTest1 setTest2
sadd setTest1 aaa aax
(integer) 2
smembers setTest1
1) "aax"
2) "aaa"
sadd setTest2 aaa aab aac aad
(integer) 4
smembers setTest2
1) "aac"
2) "aab"
3) "aad"
4) "aaa"
sdiffstore result1 setTest1 setTest2
(integer) 1
smembers result1
1) "aax"
sdiffstore result2 setTest2 setTest1
(integer) 3
smembers result2
1) "aab"
2) "aac"
3) "aad"
结论
“前果”
差集的结果来着前面的 setKey1 ,而不是后面的 setKey2,也不是整个 setKey1,.. setKeyn 的差集