Redis msetnx 命令用于为多个key设置多个值,前提是所有的key都不存在。如果 Redis 中存在当前操作中的任何一个key,则 msetnx 不会执行任何操作。
语法:
Redis msetnx 命令基本语法如下:
msetnx key1 value1 key2 value2 .. keyn valuen
可用版本
>=1.0.1.
返回值
整数 1 或 0
- 1,设置成功,之前没有设置任一个key
- 0,设置失败,之前存在某个key
返回值类型
整数
例子
redis 127.0.0.1:6379> msetnx key1 "Hello" key2 "world"
(integer) 1
redis 127.0.0.1:6379> msetnx key2 "worlds" key3 "third key"
(integer) 0
redis 127.0.0.1:6379> mget key1 key2 key3
1) "Hello"
2) "world"
3) (nil)
上面的例子中
第1次使用msetnx命令设置了key key1和key2
第2次又使用msetnx命令设置了key key2和key3
结果是第2次失败了,因为之前设置了key2.