Comando Redis Zinterstore
Redis conjunto ordenado (sorted set)
Redis Zinterstore se utiliza para calcular la intersección de múltiples conjuntos ordenados y almacenar el resultado en un nuevo conjunto ordenado.
El comando Zinterstore es muy útil cuando es necesario realizar operaciones de conjuntos (por ejemplo, calcular intersecciones) en conjuntos ordenados.
De forma predeterminada, el valor de puntuación de un miembro en el conjunto de resultados es la suma de los valores de puntuación de ese miembro en todos los conjuntos dados.
Sintaxis
La sintaxis básica del comando redis Zinterstore es la siguiente:
ZINTERSTORE destination numkeys key [key ...] [WEIGHTS weight [weight ...]] [AGGREGATE sum|min|max]
destination: el nombre del conjunto ordenado de resultados.numkeys: el número de conjuntos ordenados para los que se calculará la intersección.key: los nombres de los conjuntos ordenados que participan en el cálculo.WEIGHTS weight [weight ...]: especifica el peso de cada conjunto ordenado. El peso predeterminado es 1.AGGREGATE sum|min|max: especifica el método de agregación del resultado de la intersección. El valor predeterminado essum(suma).
Versiones disponibles
>= 2.0.0
Valor de retorno
El número de miembros guardados en el conjunto de resultados de destino.
Ejemplo
# 有序集 mid_test redis 127.0.0.1:6379> ZADD mid_test 70 "Li Lei" (integer) 1 redis 127.0.0.1:6379> ZADD mid_test 70 "Han Meimei" (integer) 1 redis 127.0.0.1:6379> ZADD mid_test 99.5 "Tom" (integer) 1 # 另一个有序集 fin_test redis 127.0.0.1:6379> ZADD fin_test 88 "Li Lei" (integer) 1 redis 127.0.0.1:6379> ZADD fin_test 75 "Han Meimei" (integer) 1 redis 127.0.0.1:6379> ZADD fin_test 99.5 "Tom" (integer) 1 # 交集 redis 127.0.0.1:6379> ZINTERSTORE sum_point 2 mid_test fin_test (integer) 3 # 显示有序集内所有成员及其分数值 redis 127.0.0.1:6379> ZRANGE sum_point 0 -1 WITHSCORES 1) "Han Meimei" 2) "145" 3) "Li Lei" 4) "158" 5) "Tom" 6) "199"
Redis conjunto ordenado (sorted set)
Otras extensiones