English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Il comando SMOVE di Redis

Redis 集合(Set)

Il comando SMOVE di Redis sposta l'elemento member specificato dalla raccolta di origine alla raccolta di destinazione.

SMOVE è un'operazione atomica.

Se la raccolta di origine non esiste o non contiene l'elemento member specificato, il comando SMOVE non esegue alcuna operazione e restituisce 0. Altrimenti, l'elemento member viene rimosso dalla raccolta di origine e aggiunto alla raccolta di destinazione.

Quando la raccolta di destinazione contiene già l'elemento member, il comando SMOVE aggiunge semplicemente l'elemento member dalla raccolta di origine.

當 source 或 destination 不屬於集合類型時,返回一個錯誤。

語法

redis Smove 命令基本語法如下:

redis 127.0.0.1:6379> SMOVE SOURCE DESTINATION MEMBER 

可用版本

>= 1.0.0

返回值

如果成員元素被成功移除,返回 1。 如果成員元素不是 source 集合的成員,並且沒有任何操作對 destination 集合執行,那麼返回 0。

在線示例

redis 127.0.0.1:6379> SADD myset1 "hello"
(integer) 1
redis 127.0.0.1:6379> SADD myset1 "world"
(integer) 1
redis 127.0.0.1:6379> SADD myset1 "bar"
(integer) 1
redis 127.0.0.1:6379> SADD myset2 "foo"
(integer) 1
redis 127.0.0.1:6379> SMOVE myset1 myset2 "bar"
(integer) 1
redis 127.0.0.1:6379> SMEMBERS myset1
1) "World"
2) "Hello"
redis 127.0.0.1:6379> SMEMBERS myset2
1) "foo"
2) "bar"

Redis 集合(Set)