SMOVE source destination member

可用版本: >= 1.0.0
时间复杂度: O(1)

member 元素从 source 集合移动到 destination 集合。

SMOVE 是原子性操作。

如果 source 集合不存在或不包含指定的 member 元素,则 SMOVE 命令不执行任何操作,仅返回 0 。否则, member 元素从 source 集合中被移除,并添加到 destination 集合中去。

destination 集合已经包含 member 元素时, SMOVE 命令只是简单地将 source 集合中的 member 元素删除。

sourcedestination 不是集合类型时,返回一个错误。

返回值

如果 member 元素被成功移除,返回 1 。如果 member 元素不是 source 集合的成员,并且没有任何操作对 destination 集合执行,那么返回 0

代码示例

  1. redis> SMEMBERS songs
  2. 1) "Billie Jean"
  3. 2) "Believe Me"
  4.  
  5. redis> SMEMBERS my_songs
  6. (empty list or set)
  7.  
  8. redis> SMOVE songs my_songs "Believe Me"
  9. (integer) 1
  10.  
  11. redis> SMEMBERS songs
  12. 1) "Billie Jean"
  13.  
  14. redis> SMEMBERS my_songs
  15. 1) "Believe Me"