为了账号安全,请及时绑定邮箱和手机立即绑定

使用带有选项标志的 ZADD

使用带有选项标志的 ZADD

Go
慕慕森 2022-07-04 09:57:19
如果记录首先不存在,我正在尝试将带有分数的记录添加到排序集中:func (r *rDA) InsertIntoSortedSetIfNotExist(value int32, score int32) error {    conn, err := r.pool.GetContext(r.ctx)    if err != nil {        return err    }    defer conn.Close()    _, err = conn.Do("ZADD NX", "some_key", score, value)  // err = "ERR command 'ZADD NX' is not supported."    return err}但是,这不适用于ZADD NX不支持的错误说法。我试过这个,它也不起作用:_, err = conn.Do("ZADD", "some_key", score, value, "NX")  // err = "ERR syntax error"如果有人知道如何使用 redigo 使用 ZADD NX 命令,将不胜感激。谢谢!
查看完整描述

1 回答

?
喵喔喔

TA贡献1735条经验 获得超5个赞

您面临的问题是由于 NX 放置错误

conn.Do("ZADD", "some_key", "NX",score, value)

redis 的命令在 NX 上是这样使用的

ZADD NAME NX 2 'Jhon'

您还可以在https://redis.io/commands/zadd#zadd-options-redis-302-or-greater查看文档

ZADD 支持选项列表,在键名之后和第一个分数参数之前指定。


查看完整回答
反对 回复 2022-07-04
  • 1 回答
  • 0 关注
  • 104 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信