帮人做网站赚钱,无忧软文网,怎样用模板建一个网站,企业电话查询黄页文章目录 字符串和哈希类型相比hset 命令hget 命令hexistshdelhkeyshvalshgetallhmgethlenhsetnxhincrbyhincrbyfloat 字符串和哈希类型相比
假设有以下一种场景#xff1a;现在要在 Redis 中存储一个用户的基本信息(id1、namezhangsan、age17)#xff0c;下图表示使用字符串… 文章目录 字符串和哈希类型相比hset 命令hget 命令hexistshdelhkeyshvalshgetallhmgethlenhsetnxhincrbyhincrbyfloat 字符串和哈希类型相比
假设有以下一种场景现在要在 Redis 中存储一个用户的基本信息(id1、namezhangsan、age17)下图表示使用字符串类型进行存储和使用哈希类型进行存储的区别 注意在 Redis 中“键” 称为 key“值” 称为 value如果value 的类型是哈希类型则 “键” 称为 field“值” 称为 value hset 命令
设置 hash 中指定 “键”(field) 的值
语法hset key field value [field value……]
返回值添加的 field-value 的个数
时间复杂度O(k)因为插入时可以插入多个所以k 表示插入的键值对(field-value) 的个数
操作演示 hget 命令
获取 hash 中指定 “键”(field) 的值
语法hget key field
返回值指定键(field)的值
时间复杂度O(1)
操作演示 hexists
判断 hash 中是否存在指定的 field
语法hexists key field
返回值1 表示存在0 表示不存在
时间复杂度O(1)
操作演示 hdel
删除 hash 中指定的键(field)
语法hdel key filed [filed……]
返回值成功删除field的个数
时间复杂度O(k)k 表示删除的键值对(field-value) 的个数
操作演示 hkeys
获取哈希中所有的 field
语法hkeys key
返回值所有的键(field)
时间复杂度O(N)
操作演示 注意这个操作要慎重使用因为如果field非常多话那么就可能会造成 Redis 服务器阻塞
hvals
获取哈希中所有键(field)的值
语法hvals key
返回值所有的字段的值
时间复杂度O(N)N表示field个数
操作演示 注意这个操作要慎重使用因为如果field非常多话那么就可能会造成 Redis 服务器阻塞
hgetall
获取 hash 中所有的字段(field)及其对应的值
语法hgetall key
返回值所有的字段及其值
时间复杂度O(N)
操作演示 注意返回值是一个字段一个值相对着同时呢这也是个危险的操作如果字段特别多的情况下就可能使 Redis 阻塞
hmget
一次获取 hash 中多个字段(field)的值
语法hmget key field [field……]
返回值指定字段的值
时间复杂度O(k)k为指定的字段的数量
操作演示 hlen
获取哈希中字(field)段的个数
语法hlen key
返回值字段的个数
时间复杂度O(1)这里的个数不需要遍历计算在内部有一个变量存储了元素个数
操作演示 hsetnx
在字段不存在的情况下设置字段和值
语法hsetnx key field value
返回值0 表示设置失败1 表示设置成功
时间复杂度O(1)
操作演示 hincrby
将 hash 中字段(field)对应的值添加指定的值
语法hincrby key field num
返回值返回添加成功后的值
时间复杂度O(1)
操作演示 hincrbyfloat
hincrby 的浮点数版本如果 field 的值是浮点数对浮点数进行加减时使用该命令。
语法hincrbyfloat key field num
返回值返回添加成功后的值
时间复杂度O(1)
操作演示