Redis的数据结构——字符串(String)与哈希(Hash)

Redis的五种数据类型:

  • 字符串(String)
  • 字符串列表(list)
  • 有序字符串集合(sorted set)
  • 哈希(hash)
  • 字符串集合(set)

众所周知,Redis它是一个key-value键值对的数据库,而关于它key的定义。大家遵从以下几点:

Key定义的注意点:

  • 不要过长(最好不要超过1024个字节)
  • 不要过短
  • 统一的命名规范

存储String

  • 二进制安全的,存入和获取的数据相同
  • Value最多可以容纳的数据长度是512M

存储String常用命令:

  • 赋值
  • 取值
  • 删除
  • 数值增减
  • 扩展命令

1、set key value
设置key的value值
2、get key
获取key的value值
3、getset key value
先获取key的value值,再重新赋值
4、del key
删除key键
5、incr key
为key的value值+1,若key不存在,则把value赋值为0后+1;若value数据类型不为integer,则报错。
6、decr key
为key的value值-1,若key不存在,则把value赋值为0后-1;若value数据类型不为integer,则报错。
7、incrby key integer
为key的value值+integer,若key不存在,则把value赋值为0后+integer;若value数据类型不为integer,则报错。
8、decrby key integer
为key的value值-integer,若key不存在,则把value赋值为0后-integer;若value数据类型不为integer,则报错。
9、append key val
为key的原来的value值后拼接 字符串val。
10、keys *

获取所有的keys列表

Redis的数据结构——字符串(String)与哈希(Hash)Redis的数据结构——字符串(String)与哈希(Hash)

存储Hash

  • String Key和String Value的map容器
  • 每一个Hash可以存储4294967295个键值对

存储Hash常用命令:

  • 赋值
  • 取值
  • 删除
  • 增加数字
  • 自学命令
设置一个hash表键值对
hset [hashTableName] [keyName] [keyValue]

获取一个hash表键值对
hget [hashTableName] [keyName] 

设置多个键值对
hmset [hashTableName] [keyName1] [keyValue1] [keyName2] [keyValue2] ...

获取多个键值对
hmget [hashTableName] [keyName1] [keyName2]

获取hash表中所有键与值
hgetall [hashTableName]

删除多个键值对
hdel [hashTableName] [keyName1] [keyName2]

删除整个hash表
hdel [hashTableName] 

增加数字
hincrby [hashTableName] [keyName1] [number]

判断是否存在 存在返回1 不存在返回0
hexists [hashTableName] [keyName1]

获取长度
hlen [hashTableName]

获取key
hkeys [hashTableName]

获取value

hvals [hashTableName]

Redis的数据结构——字符串(String)与哈希(Hash)Redis的数据结构——字符串(String)与哈希(Hash)