Os cinco tipos de dados principais e três tipos de dados especiais de redis, bem como alguns comandos básicos dos cinco tipos principais

chaves * Ver todas as chaves

flushdb limpa o banco de dados atual

EXISTS (chave) para determinar se existe esta chave

mover (chave) 1 remover a chave na biblioteca 1

digite o nome Veja o tipo de dados do nome

EXPIRE name 10 expira após definir name10s

ttl name Ver o tempo restante

Cinco principais tipos de dados Redis-Key

Corda

 anexar string anexar

obter comprimento anexar

Incremento e Decremento

 faixa de string getrange

a:1>getrange name 0 -1 //Pode ser usado para obter o comprimento total

"v1hello, nihao"
O seguinte é obter o comprimento especificado

 substituir um conjunto de caracteres

a:1>definir chave1 abcdefg

"OK"
a:1>obter chave1

"abcdefg"
a:1>setrange key1 1 xx

"7"
a:1>obter chave1

"axxdefg"

$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$

setex (definir com expire) #definir tempo de expiração

setnx ( definido se não existir ) # Não existe na configuração (comumente usado em bloqueios distribuídos)

a:1> setex key2 30 "hello"  //Define o valor de key2 como hello e expira em 30s

"OK"
a:1>ttl key2 //Verifica o tempo restante

"22"
a:1>obter chave2

"olá"


a:1> setnx mykey "redis"   //Se mykey não existir, crie mykey

"1"


a:1> teclas *

1) "nome"

2) "minha chave"

3) "visões"

4) "chave1"

a:1>ttl key2 
"-2" 

a:1> setnx mykey "MongoDb"    //Se mykey existe, a criação falha 
"0" 

a:1>get mykey 
"redis"

################################

Defina vários valores ao mesmo tempo e verifique vários valores ao mesmo tempo

mset, mget

a:0>mset k1 v1 k2 v2

"OK"
a:0>obter k1

"v1"
a:0>obter k2

"v2"
a:0>mget k1 k2

1) "v1"

2) "v2" 
a:0>

msetnx // Defina vários valores ao mesmo tempo e verifique vários valores ao mesmo tempo, atomicidade, sucesso ou falha juntos

a:0>msetnx k1 v1 k3 v3

"0"

a:0>mset k1 v1 k3 v3 
"OK"

################################

prepare-se

Uso combinado

user:1 pode ser considerado como o id do usuário é 1, o nome é zhangsan e o atributo adicional idade é 2

##########################

Alguns cenários de uso de String

Lista (lista)

$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$

Primeiro crie uma lista e insira dados na lista

inserir

Lpush list (dados armazenados) // Insere um valor ou vários valores no cabeçalho da tabela (esquerda)

Rpush list (dados armazenados) //Insira um ou mais valores no final da tabela

Obter o valor do intervalo especificado

Lrange list 0 1 //Verifica o valor do subscrito 0 ao subscrito 1

remover

Lpop list //Remove o valor da primeira lista

Rpop list //Remove o valor da última lista

Obter o valor especificado da lista

lista lindex (número de série) //Obtém o valor no subscrito do número de série

obter comprimento da lista

Llen list //retorna o comprimento da lista "8"

excluir valor especificado

lrem list 2 one1 //Excluir dois one1 na lista

Manter os elementos no intervalo especificado na lista e não excluir todos os elementos no intervalo

Ltrim list 1 2 //Os elementos no intervalo de subscritos 1-2 são reservados e todos os outros são excluídos

Uso combinado rpoplpush

 lset especifica a operação de atualização

 Linsert insere um valor específico antes ou depois de um elemento na lista

 

 

Conjunto (coleção) Os valores no conjunto são desordenados e não repetitivos

Agregar valor à coleção de conjuntos Sadd

sadd myset "olá"

Veja todos os valores dos Smembers do conjunto especificado

Smember é aconchegante

Determine se existe um valor Sismember

sismember myset olá

Obtenha o número de elementos na coleção de conjuntos Scard

cicatrizar o aconchego

  Remova o valor especificado Srem na coleção de conjuntos      

srem myset olá

Extraia aleatoriamente o número especificado de elementos Srandmember

Srandmember myset Desenhe um aleatoriamente

Srandmember myset 2 Desenhe dois aleatoriamente, o número pode ser definido

Exclua aleatoriamente alguns elementos no set spop

spop myset

Mover o valor especificado em um conjunto para outro conjunto

smove myset myset2 "kuangshen"

 Diferença, intersecção e união Sdiff , Sinter Sunion

 Alguns cenários usando set

 

Cerquilha

key-map não é muito diferente de key-valve em essência, pode ser considerado como key-<key-value>

Hset, Hmset, Hget, Hmget

 Exclua a chave especificada por hash e o valor correspondente também excluirá Hdel

 Obtenha o número de campos na tabela hash Hlen

 Determine se o campo existe Hexists

 Obtenha apenas todas as chaves de campo Hkeys

Basta obter todos os valores Hvals

 Hincrby myhash field3 5 especifica incremento

Hdecrby myhash field3 1 especifica o menos

Hsetnx campo myhash hello Na primeira vez não há valor, você pode criar configurações, e na segunda vez Hsetnx campo myhash Wasld redefine o novo valor, porque ele já tem hello e todas as configurações falham

Algumas cenas de hashing

Zset (conjunto ordenado)

Adicionar Zset Zadd

 A classificação -inf +inf corresponde a infinito negativo e infinito positivo

Salário Zrangenbyscore -inf +inf withscore exibe todos os usuários, o valor de pequeno a grande e com pontuações

 remover elemento zrem

 Obtenha os elementos de intervalo especificados

 

 resumo

 

Três tipos de dados especiais

geoespacial

Hiperloglog

Bitmap

Acho que você gosta

Origin blog.csdn.net/weixin_53810346/article/details/123991490
Recomendado
Clasificación