Skip to content

BITMAP

BITCOUNT

语法

bash
    BITCOUNT key [start end [BYTE | BIT]]

计算字符串中设置位的数量(总体计数)。

返回值

整数返回值: 设置为1的位数。


BITFIELD

语法

bash
BITFIELD key [GET encoding offset | [OVERFLOW <WRAP | SAT | FAIL>]
  <SET encoding offset value | INCRBY encoding offset increment>
  [GET encoding offset | [OVERFLOW <WRAP | SAT | FAIL>]
  <SET encoding offset value | INCRBY encoding offset increment>
  ...]]

该命令将 Garnet 字符串视为位数组,并且能够寻址不同位宽和任意非(必要)对齐偏移量的特定整数字段。 实际上,使用此命令,您可以设置,例如,带符号的 5位偏移量 1234 处的整数为特定值,从偏移量 4567 检索 31 位无符号整数。 类似地,该命令处理指定整数的增量和减量,提供用户可以配置的有保证且明确指定的上溢和下溢行为。

返回值

整数返回值: 偏移处存储的位值。


BITOP AND

语法

bash
BITOP AND destkey srckey1 srckey2 srckey3 ... srckeyN

在多个键(包含字符串值)之间执行按位 AND 运算,并将结果存储到目标键中。

返回值

整数返回值: 目标键中存储的字符串的大小,即等于最长输入字符串的大小。


BITOP NOT

语法

bash
BITOP NOT destkey srckey

在多个键(包含字符串值)之间执行按位 NOT 运算,并将结果存储到目标键中。

返回值

整数返回值: 目标键中存储的字符串的大小,即等于最长输入字符串的大小。


BITPOS

语法

bash
    BITPOS key bit [start [end [BYTE | BIT]]]

返回字符串中第一个设置为 1 或 0 的位的位置。

返回值

以下之一:

  • 整数返回值: 根据请求将第一位的位置设置为1或0
  • 整数返回值: 如果位参数为 1 并且字符串为空或仅由零字节组成时返回 -1。

GETBIT

语法

bash
   GETBIT key offset

返回 key 处存储的字符串值中偏移处的位值。

返回值

存储在偏移处的位值,以下之一

  • 整数返回值: 0.
  • 整数返回值: 1.

SETBIT

语法

bash
    SETBIT key offset value

设置或清除键中存储的字符串值中偏移处的位。该位根据值设置或清除,该值可以是 0 或 1。当 key 不存在时,将创建一个新的字符串值。

返回值

整数返回值: the original bit value stored at offset.


HYPERLOGLOG

PFADD

语法

bash
PFADD <key> <element-1> ... <element-n>

将所有元素参数添加到存储在指定为第一个参数的变量名处的 HyperLogLog 数据结构。

返回值

整数返回值: 如果至少 1 个 HyperLogLog 内部寄存器被更改,则为 1。否则为 0。


PFCOUNT

语法

bash
PFCOUNT key [key ...]

当使用单个键调用时,返回由存储在指定变量中的 HyperLogLog 数据结构计算得出的近似基数,如果该变量不存在,则返回 0。 当使用多个键调用时,通过在内部将存储在提供的键处的 HyperLogLog 合并到临时 HyperLogLog 中,返回传递的 HyperLogLog 并集的近似基数。

返回值

整数返回值: 通过 PFADD 观察到的独特元素的近似数量。


PFMERGE

语法

bash
PFMERGE <destination-key> <source-key-1> ... <source-key-n>

将多个 HyperLogLog 值合并为一个唯一值,该值将近似观察到的源 HyperLogLog 结构集的并集基数。 计算出的合并 HyperLogLog 设置为目标变量,如果不存在则创建该变量(默认为空 HyperLogLog)。

返回值

字符串返回值: 该命令仅返回 OK。


PUB/SUB

PSUBSCRIBE

语法

bash
PSUBSCRIBE <pattern-1> ... <pattern-n>

使客户端订阅给定的模式。

支持的 glob 样式模式:

h?llo 匹配 hello, hallohxllo
h*llo 匹配 hlloheeeello
h[ae]llo 匹配 hellohallo, 但是不匹配 hillo
如果您想逐字匹配特殊字符,请使用转义 \ 特殊字符

返回值

成功后,此命令不会返回任何内容。相反,对于每个模式,都会推送一条第一个元素为字符串的消息,psubscribe 作为命令成功的确认。


PUBLISH

语法

bash
PUBLISH <channel> <message>

将消息发布到给定 channel。

返回值

整数返回值: 收到消息的客户端数量。


PUNSUBSCRIBE

语法

bash
PUNSUBSCRIBE <pattern-1> ... <pattern-n>

取消客户端对给定模式的订阅,如果没有给出,则取消订阅所有模式。

当未指定模式时,客户端将取消订阅所有先前订阅的模式。在这种情况下,每个取消订阅模式的消息都会发送到客户端。

返回值

成功后,此命令不会返回任何内容。相反,对于每个模式,都会推送一条第一个元素为字符串的消息, punsubscribe 作为命令成功的确认。


SUBSCRIBE

语法

bash
SUBSCRIBE channel [channel ...]

客户端订阅指定频道。

返回值

成功后,此命令不会返回任何内容。相反,对于每个通道,都会推送一条第一个元素为字符串的消息,subscribe 作为命令成功的确认。


UNSUBSCRIBE

语法

bash
UNSUBSCRIBE [channel [channel ...]]

取消客户端对给定频道的订阅,如果没有给定频道,则取消订阅所有频道。

返回值

成功后,此命令不会返回任何内容。相反,对于每个通道,都会推送一条第一个元素为字符串的消息, unsubscribe 作为命令成功的确认。