Redis整理(4)之数据类型hash
2014-12-09 11:51
316 查看
除了散列类型,其他数据类型不支持嵌套
一个散列类型键只能包含2^32-1字段
散列类型适合存储对象:使用对象类别和ID构成键名,使用字段表示对象的属性,字段值存储属性值。
也就是说:同样的对象,各自却可以添加减少属性,有各自额外的特性。
例如一个NBA球员属性
NBAplayer:ID height rate
NBAplayer:ID height rate
比如上述类型球员都有着height rate属性
那么如果有个属性chinaaddress,这个表示在NBA打球的中国球员,是其他国家球员不具备的属性
放在关系数据库中,我们得额外开启一个字段,但是很明显中国球员很少,这个字段无疑是一个浪费!
那么可不可以大部分属性一致,然后特殊对象可以拥有自己独一无二的的属性且不造成表冗余?
同理:我可以将博客文章存储在散列中,article.title article.id article.time article.content
避免了牵一发动全身,只需要修改该散列中相应的字段值便可以完成局部字段更新,不必所有内容更新
可以:
redis支持散列 hash
hset key field value
hget key field
hmset key field value [field value...]
hget key field[field....]
hgetall key
hexists key field
hsetnx key field value //字段不存在时候赋值
hincrby key field incrment
hdel key field[field....] 删除键一个或者多个字段/属性
hlen key 获得键的字段/属性的个数
//只获取字段名或字段值
hkeys key
hvals key
一个散列类型键只能包含2^32-1字段
散列类型适合存储对象:使用对象类别和ID构成键名,使用字段表示对象的属性,字段值存储属性值。
也就是说:同样的对象,各自却可以添加减少属性,有各自额外的特性。
例如一个NBA球员属性
NBAplayer:ID height rate
NBAplayer:ID height rate
比如上述类型球员都有着height rate属性
那么如果有个属性chinaaddress,这个表示在NBA打球的中国球员,是其他国家球员不具备的属性
放在关系数据库中,我们得额外开启一个字段,但是很明显中国球员很少,这个字段无疑是一个浪费!
那么可不可以大部分属性一致,然后特殊对象可以拥有自己独一无二的的属性且不造成表冗余?
同理:我可以将博客文章存储在散列中,article.title article.id article.time article.content
避免了牵一发动全身,只需要修改该散列中相应的字段值便可以完成局部字段更新,不必所有内容更新
可以:
redis支持散列 hash
hset key field value
hget key field
hmset key field value [field value...]
hget key field[field....]
hgetall key
hexists key field
hsetnx key field value //字段不存在时候赋值
hincrby key field incrment
hdel key field[field....] 删除键一个或者多个字段/属性
hlen key 获得键的字段/属性的个数
//只获取字段名或字段值
hkeys key
hvals key
<?php $redis = new Redis(); $redis->connect('192.168.104.10',6379); $first = 'nba:Tmac';//NBA本土球员 麦迪 $redis->hset($first,'height','203'); $redis->hset($first,'rate','43'); print_r($redis->hgetall($first)); echo "<hr>"; $first = 'nba:Yao';//姚明 $redis->hset($first,'height','203'); $redis->hset($first,'rate','43'); $redis->hset($first,'chinaAddress','上海'); print_r($redis->hgetall($first)); ?>
相关文章推荐
- (Redis_学习一)Redis关于string类型和hash类型数据操作
- redis:hash数据类型与操作
- redis:hash数据类型与操作
- Redis的hash数据类型及其应用场景解析---购物车
- redis:hash数据类型与操作
- NoSQL之Redis对数据类型hash的操作
- [redis]redis五种数据类型命令汇总整理
- Redis数据类型之HASH类型
- php操作redis中的hash类型数据的方法和代码例子
- (10-4)redis-hash数据类型
- Redis学习笔记---数据类型一(string、list、hash)
- Redis Hash类型数据常用命令总结
- Redis整理(6)之数据类型set
- 2.Redis数据类型之String类型和Hash类型
- Redis Hash类型数据常用命令总结
- redis学习--基础5 数据类型hash
- php操作redis中的hash和zset类型数据的方法和代码例子
- Redis整理(5)之数据类型list
- redis:hash数据类型与操作
- redis:hash数据类型与操作