Redis ZADD命令

ZADD命令用于向有序集合(sorted set)中添加一个或多个成员,或者更新已存在成员的分数。

Redis ZADD命令详解

命令概述

ZADD命令用于向有序集合(sorted set)中添加一个或多个成员,或者更新已存在成员的分数。

命令语法

ZADD key [NX|XX] [CH] [INCR] score member [score member ...]

命令参数

  • key:有序集合的键名。
  • NX|XX:可选参数,表示只在有序集合中不存在成员时,才执行插入操作。如果是NX,则表示只有不存在的时候插入;如果是XX,则表示只有存在的时候才能插入。
  • CH:可选参数,表示同时修改了分数的成员和新增的成员数量。
  • INCR:可选参数,表示对成员的分数进行自增操作。
  • score:成员在有序集合中的排序值。
  • member:被添加到有序集合中的成员。

命令返回值

返回操作成功插入的成员数量。

命令使用方法

添加单个成员

ZADD myset 1 "member1"

将"member1"添加到"myset"有序集合中,排序值为1。

添加多个成员

ZADD myset 2 "member2" 3 "member3" 4 "member4"

将"member2"、"member3"和"member4"分别添加到"myset"有序集合中,排序值分别为2、3和4。

更新已存在成员的分数

ZADD myset CH 5 "member1" 

将"myset"有序集合中"member1"的排序值更新为5。

命令实例

实例1

有一家在线商城需要存储每个用户的购物车信息,我们可以使用有序集合来实现该功能。写入购物车信息时,我们可以使用ZADD命令将商品加入购物车并设置其数量,随后可以使用ZINCRBY命令来更新购物车中商品的数量。

# 添加新商品到购物车
ZADD shopping_cart:1 1 "apple"
# 更新已有商品的数量
ZINCRBY shopping_cart:1 1 "apple"

实例2

现有一个社交网站,用户可以分享自己喜欢的文章,网站需要对每篇文章的点赞数进行实时统计。我们可以使用有序集合来实现点赞数的计算,每次有用户点赞时,可以使用ZINCRBY命令将该文章的点赞数自增1。

# 新增一篇文章
ZADD articles 0 "article1"
# 文章点赞数自增1
ZINCRBY articles 1 "article1"

以上就是Redis ZADD命令的详细讲解,包括命令语法、参数、返回值和使用方法等,以及两个实例说明。

本文标题为:Redis ZADD命令

上一篇: Redis SMEMBERS命令
下一篇: Redis ZRANK命令

基础教程推荐