Redis aprendizaje de hash (II)

I. Visión general

Podemos Redis al igual que el tipo String clave hash Valor de cadena y el contenedor mapa. Por lo tanto, este tipo es muy adecuado para almacenar el valor de la información del objeto. El nombre de usuario, contraseña edad, y similares. Si el hash contiene muy poco campo, entonces este tipo de datos también utilizar solamente muy poco espacio en disco. Cada Hash puede almacenar 4294967295 pares.

En segundo lugar, el comando relevante

1, la asignación

    Ejemplo: val campo de hash HAjuste

    Uso: Si no existe la tabla hash, se crea una nueva tabla hash y operación PONH.

                Si el campo ya existe en la tabla hash, el valor antiguo será sobrescrito.

    Devoluciones: si el campo es una tabla hash de un nuevo campo, y el valor del éxito, regresó. Si la tabla hash ya existe en el campo de dominio y los viejos valores han sido sobrescrito con el nuevo valor, devuelve 0.

 

    Ejemplo: val campo de hash hsetnx

    Uso: Si no existe la tabla hash, se crea una nueva tabla hash y operación PONH.

               Si el campo ya existe en la tabla hash, la operación no es válida.

               Si no existe la clave, una nueva tabla hash se crea y ejecuta un comando HSETNX.

    Devuelve: establecido con éxito, devuelve 1. Si el campo dado ya existe y no realiza ninguna operación ( diferencia de HAjuste val campo de hash ), devuelve 0.

 

    Ejemplo: val campo de hash hmset

    Uso: para simultáneamente una pluralidad de campo-valor (campo - valor) proporcionado a la tabla hash.

                Este comando sobrescribe los campos en la tabla hash que ya existe.

                Si no existe la tabla hash, se crea una tabla hash vacía, y llevar a cabo la operación HMSET.

    Devoluciones: Si el comando se ejecuta correctamente, devuelve OK.

 

    Ejemplo: hkeys de hash

    Uso: utilizado para obtener todos los campos en la tabla hash (campo).

    Devuelve: una tabla hash en toda la lista de campos (campo). Cuando no existe la clave, devuelve una lista vacía.

127.0.0.1:6379> hmset myhash field1 1 filed2 2 filed3 3
OK
127.0.0.1:6379> hset myhash filed4 4
(integer) 1
127.0.0.1:6379> hsetnx myhash field2 66
(integer) 1
127.0.0.1:6379> hsetnx myhash filed2 666
(integer) 0
127.0.0.1:6379> hkeys myhash
1) "name"
2) "field1"
3) "filed2"
4) "filed3"
5) "filed4"
6) "field2"
127.0.0.1:6379>

2, el valor

    Ejemplo: campo de hash hget

    Uso: Devuelve el valor hash del campo especificado en la tabla.

    Devuelve: Devuelve el valor del campo dado. Si no existe el campo o clave dada, devuelve nil.

 

    Ejemplo: hmget de hash campo1 ..fieldn 

    Uso: Devuelve la tabla hash, el uno o más valores para un campo determinado. Si el campo especificado no existe en la tabla hash, a continuación, devuelve un valor nulo.

    Devuelve: contiene una pluralidad de secuencias tablas dadas valores de campo asociado de petición, y los valores de la tabla de orden como campo especificado.

 

    clave Hvals: Ejemplo

    Uso: devuelve una tabla de valores de hash para todos los campos (de campo) de.

    Devuelve: los valores de una lista (de campo) en la tabla hash contiene todos los campos. Cuando no existe la clave, una mesa vacía.

    

    clave hexists: Ejemplo

    Uso: Especificar el campo para ver el hash existe mesa.

    Devuelve: true si la tabla hash que contiene un campo determinado, un retorno. Si la tabla hash no contiene un campo determinado, o la clave no existe, devuelve 0.

 

    Ejemplo: clave hgetall

    Uso: se utiliza para devolver una tabla hash, todos los campos y valores. En valor de retorno, la cada nombre de campo inmediatamente después de (nombre de campo) es el valor del campo (valor), por lo que el valor de retorno es el doble de la longitud del tamaño de la tabla hash.

    Los campos mesa de campo y los valores de hash en una lista: retornos. Si no existe la clave, devuelve una lista vacía.

 

    Ejemplo: HLEN de hash

    Uso: Para ver el número de campos en la tabla hash.

    Devuelve: Devuelve el número de campos en la tabla hash, si no existe la clave, devuelve 0.

 

    Ejemplo: HLEN de hash

    Uso: Para ver el número de campos en la tabla hash.

    Devuelve: Devuelve el número de campos en la tabla hash, si no existe la clave, devuelve 0.

  

127.0.0.1:6379> hkeys myhash                    #得到的是标签值
1) "name"
2) "field1"
3) "filed2"
4) "filed3"
5) "filed4"
6) "field2"
127.0.0.1:6379> HVALS myhash                    得到标签对应的值
1) "jack"
2) "1"
3) "2"
4) "3"
5) "4"
6) "66"
127.0.0.1:6379> hget myhash name                获取哈希表对应标签的值
"jack"
127.0.0.1:6379> hmget myhash name field1        获取多个标签的值
1) "jack"
2) "1"
127.0.0.1:6379> HEXISTS myhash name
(integer) 1
127.0.0.1:6379> hgetall myhash                 得到标签值+对应的值
 1) "name"
 2) "jack"
 3) "field1"
 4) "1"
 5) "filed2"
 6) "2"
 7) "filed3"
 8) "3"
 9) "filed4"
10) "4"
11) "field2"
12) "66"
127.0.0.1:6379> hlen myhash                  统计标签个数
(integer) 6
127.0.0.1:6379>

3, la operación

    Ejemplo: hash de hincrby campo num

    Uso: utilizado como valores de campo en la tabla hash, más el valor de incremento especificado. Incremento puede ser negativo , correspondiente a operación de resta en el campo especificado. Si no existe la tabla clave hash, se crea una nueva tabla hash y ejecuta el comando HINCRBY. Si no existe el campo especificado, a continuación, antes de ejecutar el comando, el campo de valor se inicializa a cero. Un campo para el comando de ejecución HINCRBY valor de cadena almacenada se producirá un error . El valor de esta operación se limita a 64 bits (bit) dentro de la representación digital firmado.

    Vuelta: incr después de que el valor del campo.

 

    Ejemplo: hash de hincrbyfloat campo num

    Uso: utilizado como valores de campo en la tabla hash, más el valor de incremento especificado. Incremento puede ser negativo , correspondiente a operación de resta en el campo especificado. Si no existe la tabla clave hash, se crea una nueva tabla hash y ejecuta el comando HINCRBY. Si no existe el campo especificado, a continuación, antes de ejecutar el comando, el campo de valor se inicializa a cero. Un campo para el comando de ejecución HINCRBY valor de cadena almacenada se producirá un error . El valor de esta operación se limita a 64 bits (bit) dentro de la representación digital firmado.

    Vuelta: incr después de que el valor del campo.

127.0.0.1:6379> hincrby myhash field2 -6
(integer) 60
127.0.0.1:6379> hincrby myhash field2 6
(integer) 66
127.0.0.1:6379> hincrbyfloat myhash field2 6.6
"72.599999999999994"
127.0.0.1:6379>

 

Publicado 22 artículos originales · ganado elogios 9 · vistas 8818

Supongo que te gusta

Origin blog.csdn.net/ljm_c_bok/article/details/104841393
Recomendado
Clasificación