redis|redis-py zadd 和 zincrby的设计简直让我理解不能啊

【字号: 日期:2022-08-23浏览:24作者:雯心

问题描述

rediszadd命令为 zadd 变量 val keyzincrby命令为 zincrby 变量 val key

hset的命令为 hset 变量 key val 像hash这种赋值为key val的赋值方式我是很理解的

z系列的东西是val key就算了,然而redis.py里面的设计为什么这么诡异

conn.zadd 变量 val key 跟 redis的zadd顺序一致conn.zincrby 变量 key val跟 redis的zincrby顺序相反

理解不能啊,首先zadd里面当年为毛设计成val key而不是key val,其次写redis-py的作者是怎么想的,为毛zadd与zincrby一个跟默认命令顺序相同,一个跟默认命令相反?

问题解答

回答1:

因为这几个参数的叫法不是你写的这样:

zadd命令为 zadd 变量 val key

而是

zadd key score member

key是有序集合的key,你所谓的val是集合里面每个成员的分数,而最后是成员。这东西和普通的set key value根本是两回事。

但为啥是score member而不是member score我就不太清楚了,个人瞎猜可能设计者认为这个跟排行榜是类似的,排行榜一般都是排名在前,谁是这个排名在后

相关文章: