¿Cómo funciona Set Hash Zset en redis?

Operación de comando

conjunto

   Agrega un zhangsan al conjunto

127.0.0.1:16379[3]> sadd set zhangsan
(integer) 1

   Agregue un zhangsan al conjunto (resultado: (entero) 0) se deduplica

127.0.0.1:16379[3]> sadd set zhangsan
(integer) 0

   Consiga a todos los miembros en el set

127.0.0.1:16379[3]> SMEMBERS set 
1) "zhangsan"

   Agregue varios valores a la colección de conjuntos lisi wangwu zhaoliu

127.0.0.1:16379[3]> sadd set lisi wangwu zhaoliu 
(integer) 3

   Consiga a todos los miembros en el set

127.0.0.1:16379[3]> SMEMBERS set
1) "zhaoliu"
2) "wangwu"
3) "lisi"
4) "zhangsan"

   Determine si hay lisi en la colección de conjuntos, devuelva 1

127.0.0.1:16379[3]> SISMEMBER set lisi
(integer) 1

   Determine si hay jaja en la colección de conjuntos sin devolver 0

127.0.0.1:16379[3]> SISMEMBER set haha
(integer) 0

   Eliminar el elemento cuyo valor es zhaoliu en el conjunto

127.0.0.1:16379[3]> SREM set zhaoliu
(integer) 1

   Obtenga información sobre todos los elementos

127.0.0.1:16379[3]> smembers set
1) "wangwu"
2) "lisi"
3) "zhangsan"

   Obtener aleatoriamente un elemento en el conjunto

127.0.0.1:16379[3]> SRANDMEMBER set
"lisi"

   Obtener dos elementos aleatoriamente en el conjunto

127.0.0.1:16379[3]> SRANDMEMBER set 2
1) "lisi"
2) "wangwu"

   Obtén toda la información del elemento en el conjunto

127.0.0.1:16379[3]> SMEMBERS set
1) "wangwu"
2) "lisi"
3) "zhangsan"

   Obtener (hacer estallar) los elementos del conjunto

127.0.0.1:16379[3]> spop set
"zhangsan"

   Obtén todos los elementos del conjunto

127.0.0.1:16379[3]> SMEMBERS set
1) "wangwu"
2) "lisi"

   Obtén todos los elementos del conjunto
127.0.0.1:16379[3]> SMEMBERS set
1) "wangwu"
2) "lisi"

   Mueva el elemento lisi en el conjunto a myset

127.0.0.1:16379[3]> SMOVE set myset lisi
(integer) 1

   Obtén todos los elementos del conjunto. En este momento, falta un elemento llamado lisi

127.0.0.1:16379[3]> SMEMBERS set
1) "wangwu"

   Obtenga todos los elementos en myset. En este momento, hay un elemento adicional llamado lisi

127.0.0.1:16379[3]> smembers myset
1) "lisi"

   Se agregan cinco elementos de abcde a la colección1

127.0.0.1:16379[3]> sadd collection1 a b c d e
(integer) 5

   Se agregaron cinco elementos de bcdfk a collection2

127.0.0.1:16379[3]> sadd collection2 b c d f k
(integer) 5
127.0.0.1:16379[3]> SMEMBERS collection1
1) "b"
2) "a"
3) "c"
4) "d"
5) "e"
127.0.0.1:16379[3]> SMEMBERS collection2
1) "f"
2) "b"
3) "c"
4) "d"
5) "k"

   Compara qué elementos tiene más colección1 que colección2

127.0.0.1:16379[3]> SDIFF collection1 collection2
1) "a"
2) "e"

   Comparar qué elementos tiene más colección2 que colección1

127.0.0.1:16379[3]> SDIFF collection2 collection1
1) "f"
2) "k"

   Intersección de colección2 y colección1

127.0.0.1:16379[3]> SINTER collection1 collection2
1) "b"
2) "d"
3) "c"

   La unión de collection2 y collection1

127.0.0.1:16379[3]> SUNION collection1 collection2
1) "a"
2) "b"
3) "e"
4) "d"
5) "f"
6) "k"
7) "c"

Escenario: los usuarios de Weibo A colocan a todas las personas que siguen en una colección de conjuntos. También colocan a sus fans en un conjunto.
Atención común, pasatiempos comunes, amigos de segundo grado, amigos recomendados (teoría de la segmentación de seis grados)

picadillo

   Establecer una clave para hash como un par clave-valor cuyo nombre es zhangsan

127.0.0.1:16379[4]> hset hash name zhangsan
(integer) 1

   Obtenga el valor del nombre de la clave en el hash

127.0.0.1:16379[4]> hget hash name
"zhangsan"

   Establezca una clave para dividir dos pares clave-valor con un valor de edad de 22 y un valor de sexo clave nan

127.0.0.1:16379[4]> HSET hash age 22 sex nan
(integer) 2

   Obtenga el valor de nombre, edad, sexo en hash por lotes

127.0.0.1:16379[4]> hmget hash name age sex
1) "zhangsan"
2) "22"
3) "nan"

   Obtenga todos los valores en el hash

127.0.0.1:16379[4]> hgetall hash
1) "name"
2) "zhangsan"
3) "age"
4) "22"
5) "sex"
6) "nan"

   Obtenga todos los valores en el hash

127.0.0.1:16379[4]> hgetall hash
1) "name"
2) "zhangsan"
3) "age"
4) "22"
5) "sex"
6) "nan"

   Eliminar el valor del sexo en la clave hash

127.0.0.1:16379[4]> hdel hash sex
(integer) 1

   Obtenga todos los valores en el hash

127.0.0.1:16379[4]> hgetall hash
1) "name"
2) "zhangsan"
3) "age"
4) "22"

   Obtenga todos los valores en el hash

127.0.0.1:16379[4]> hgetall hash
1) "name"
2) "zhangsan"
3) "age"
4) "22"

   Lote agregar para agregar valor al hash

127.0.0.1:16379[4]> hmset hash score 22 grade 5
OK

   Obtenga todos los valores en el hash

127.0.0.1:16379[4]> hgetall hash
1) "name"
2) "zhangsan"
3) "age"
4) "22"
5) "score"
6) "22"
7) "grade"
8) "5"

   Obtenga la longitud del hash

127.0.0.1:16379[4]> hlen hash
(integer) 4

   Obtenga todos los valores en el hash

127.0.0.1:16379[4]> hgetall hash
1) "name"
2) "zhangsan"
3) "age"
4) "22"
5) "score"
6) "22"
7) "grade"
8) "5"

   Pruebe si existe la clave de nombre en el hash

127.0.0.1:16379[4]> HEXISTS hash name
(integer) 1

   Prueba si la clave hah existe en el hash

127.0.0.1:16379[4]> HEXISTS hash hah
(integer) 0

   Obtenga todos los valores en el hash

127.0.0.1:16379[4]> hgetall hash
1) "name"
2) "zhangsan"
3) "age"
4) "22"
5) "score"
6) "22"
7) "grade"
8) "5"

   Obtenga todos los valores clave en el hash

127.0.0.1:16379[4]> HKEYS hash
1) "name"
2) "age"
3) "score"
4) "grade"

   Obtenga todos los valores de valor en el hash

127.0.0.1:16379[4]> HVALS hash
1) "zhangsan"
2) "22"
3) "22"
4) "5"

   Obtenga todos los valores en el hash

127.0.0.1:16379[4]> hgetall hash
1) "name"
2) "zhangsan"
3) "age"
4) "22"
5) "score"
6) "22"
7) "grade"
8) "5"

   Se incrementa el valor de la clave especificada en hash

127.0.0.1:16379[4]> HINCRBY hash age 1
(integer) 23

   Se incrementa el valor de la clave especificada en hash

127.0.0.1:16379[4]> HINCRBY hash age 1
(integer) 24

   Obtenga el valor de la clave especificada en el hash

127.0.0.1:16379[4]> hget hash age
"24"

   Establezca el valor de la clave especificada en el hash, créelo si no

127.0.0.1:16379[4]> HSETNX hash fav hiking
(integer) 1

   Establezca el valor de la clave especificada en el hash, créelo si no (fav ya existe, por lo que la creación falla)

127.0.0.1:16379[4]> HSETNX hash fav hiking
(integer) 0

   Obtenga el valor de la clave especificada en el hash

127.0.0.1:16379[4]> hgetall hash
 1) "name"
 2) "zhangsan"
 3) "age"
 4) "24"
 5) "score"
 6) "22"
 7) "grade"
 8) "5"
 9) "fav"
10) "hiking"

   Hash es más adecuado para operar objetos que cadenas, y los objetos de almacenamiento son todos adecuados por su valor después de todo

127.0.0.1:16379[4]> hmset user:1001 name zhangsan age 23 fav swing
OK
127.0.0.1:16379[4]> hmget user:1001 name age fav
1) "zhangsan"
2) "23"
3) "swing"

zset

   Agrega un zhangsan con una puntuación de 1 a la colección de conjuntos

127.0.0.1:16379[5]> zadd set 1 zhangsan
(integer) 1

   Agrega un lisi con una puntuación de 2 a la colección de conjuntos

127.0.0.1:16379[5]> zadd set 2 lisi
(integer) 1

   Agrega un wangwu con una puntuación de 3 al conjunto

127.0.0.1:16379[5]> zadd set 3 wangwu 
(integer) 1

   Obtenga todos los valores del conjunto

127.0.0.1:16379[5]> ZRANGE set 0 -1
1) "zhangsan"
2) "lisi"
3) "wangwu"

   Obtenga miembros de acuerdo con la puntuación en el intervalo especificado, el rango del intervalo es de infinito negativo a infinito positivo, y la puntuación es de mayor a menor

127.0.0.1:16379[5]> ZRANGEBYSCORE set -inf +inf
1) "zhangsan"
2) "lisi"
3) "wangwu"

   Obtenga miembros de acuerdo con las puntuaciones en el intervalo especificado, el rango del intervalo es de infinito negativo a infinito positivo, y las puntuaciones están en orden inverso de menor a mayor con puntuaciones

127.0.0.1:16379[5]> ZRANGEBYSCORE set -inf +inf withscores
1) "zhangsan"
2) "1"
3) "lisi"
4) "2"
5) "wangwu"
6) "3"

   Obtenga miembros según la puntuación en el intervalo especificado. El rango del intervalo es de infinito negativo a 2 (incluido 2). Las puntuaciones están en orden inverso de menor a mayor con las puntuaciones.

127.0.0.1:16379[5]> ZRANGEBYSCORE set -inf 2 withscores
1) "zhangsan"
2) "1"
3) "lisi"
4) "2"

   Obtenga todos los miembros en el conjunto

127.0.0.1:16379[5]> ZRANGE set 0 -1
1) "zhangsan"
2) "wangwu"

   Obtenga la duración del conjunto

127.0.0.1:16379[5]> ZCARD set
(integer) 2

   Obtener el número de elementos en el intervalo de puntuación establecido especificado

127.0.0.1:16379[5]> ZCOUNT set 1 2
(integer) 1

   Obtenga el número de elementos en el intervalo de puntuación establecido especificado, la puntuación no está entre 5 y 6, por lo que es 0

127.0.0.1:16379[5]> ZCOUNT set 5 6
(integer) 0

Supongo que te gusta

Origin blog.csdn.net/weixin_38071259/article/details/106336813
Recomendado
Clasificación