smove命令
Redis smove
,命令将指定成员 member 元素从 source 集合移动到 destination 集合。
smove
是原子性操作
语法
smembers source destination member
-
如果 source 集合不存在或不包含指定的 member 元素,则
smove
命令不执行任何操作,仅返回 0 。否则, member 元素从 source 集合中被移除,并添加到 destination 集合中去。 -
当 destination 集合已经包含 member 元素时,
smove
命令只是简单地将 source 集合中的 member 元素删除。 -
当 source 或 destination 不是集合类型时,返回一个错误。
返回值
- 如果成员元素被成功移除,返回 1 。
- 如果成员元素不是 source 集合的成员,并且没有任何操作对 destination 集合执行,那么返回 0 。
例子
127.0.0.1:6379> sadd website "qq.com"
(integer) 1
127.0.0.1:6379> sadd website "baidu.com"
(integer) 1
127.0.0.1:6379> sadd website "mi.com"
(integer) 1
127.0.0.1:6379> sadd website2 "bing.com"
(integer) 1
127.0.0.1:6379> smoev website website2 "mi.com"
(integer) 1
127.0.0.1:6379> smembers website
1) "baidu.com"
2) "qq.com"
127.0.0.1:6379> smembers website2
1) "bing.com"
2) "mi.com"