|NO.Z.00009|——————————|BigDataEnd|——|Hadoop&Redis.V09|——|Redis.v09|数据类型.v04|
一、sortedset有序集合类型
### --- SortedSet(ZSet) 有序集合: 元素本身是无序不重复的
~~~ 每个元素关联一个分数(score)
~~~ 可按分数排序,分数可重复
二、常见操作命令如下表:
| 命令名称 | 命令格式 | 描述 |
| zadd | zadd key score1 member1 score2 member2 ... | 为有序集合添加新成员 |
| zrem | zrem key mem1 mem2 .... | 删除有序集合中指定成员 |
| zcard | zcard key | 获得有序集合中的元素数量 |
| zcount | zcount key min max | 返回集合中score值在[min,max]区间的元素数量 |
| zincrby | zincrby key increment member | 在集合的member分值上加increment |
| zscore | zscore key member | 获得集合中member的分值 |
| zrank | zrank key member | 获得集合中member的排名(按分值从小到大) |
| zrevrank | zrevrank key member | 获得集合中member的排名(按分值从大到小) |
| zrange | zrange key start end | 获得集合中指定区间成员,按分数递增排序 |
| zrevrange | zrevrange key start end | 获得集合中指定区间成员,按分数递减排序 |
### --- 应用场景:
~~~ 由于可以按照分值排序,所以适用于各种排行榜。比如:点击排行榜、销量排行榜、关注排行榜等。
### --- 举例:
127.0.0.1:6379> zadd hit:1 100 item1 20 item2 45 item3
(integer) 3
127.0.0.1:6379> zcard hit:1
(integer) 3
127.0.0.1:6379> zscore hit:1 item3
"45"
127.0.0.1:6379> zrevrange hit:1 0 -1
1) "item1"
2) "item3"
3) "item2"
127.0.0.1:6379>
一、hash类型(散列表)
### --- hash类型
~~~ Redis hash 是一个 string 类型的 field 和 value 的映射表,它提供了字段和字段值的映射。
~~~ 每个 hash 可以存储 2^32 - 1 键值对(40多亿)。

二、常见操作命令如下表:
| 命令名称 | 命令格式 | 描述 |
| hset | hset key field value | 赋值,不区别新增或修改 |
| hmset | hmset key field1 value1 field2 value2 | 批量赋值 |
| hsetnx | hsetnx key field value | 赋值,如果filed存在则不操作 |
| hexists | hexists key filed | 查看某个field是否存在 |
| hget | hget key field | 获取一个字段值 |
| hmget | hmget key field1 field2 ... | 获取多个字段值 |
| hgetall | hgetall key | |
| hdel | hdel key field1 field2... | 删除指定字段 |
| hincrby | hincrby key field increment | 指定字段自增increment |
| hlen | hlen key | 获得字段数量 |
### --- 应用场景:
~~~ 对象的存储 ,表数据的映射
### --- 举例:
127.0.0.1:6379> hmset user:001 username zhangfei password 111 age 23 sex M
OK
127.0.0.1:6379> hgetall user:001
1) "username"
2) "zhangfei"
3) "password"
4) "111"
5) "age"
6) "23"
7) "sex"
8) "M"
127.0.0.1:6379> hget user:001 username
"zhangfei"
127.0.0.1:6379> hincrby user:001 age 1
(integer) 24
127.0.0.1:6379> hlen user:001
(integer)
Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart
——W.S.Landor
浙公网安备 33010602011771号