Redis数据类型

文章目录

        • 1. redis的数据类型
        • 2. String 字符串类型
        • 3. Hash键值类型
        • 4. List列表类型
        • 5. Set集合与Zset集合类型
          • set命令:
          • Zset命令:

1. redis的数据类型

  1. String -字符串类型
  2. Hash -Hash类型,就是对于value里边又是一个键值对。
  3. List -列表类型,即数组
  4. Set -集合类型,集合中不允许重复
  5. Zset - 有序的集合类型

2. String 字符串类型

这里说的字符串不仅是传统上说的字符,它还可以对应数字。
String最大容纳512M字节,建议单个kv不超过100kb,否则在内存中提取的效率将会大大降低。
字符串中最长使用的命令:

命令 示例 说明
get get hello 获得key = hello 结果
set set hello world 设置key = hello, value = world
mset mget mset hello world java best , mget hello java 一次性设置或获取多个值
del del hello 删除key = hello
incr /decr incr count, decr count key值自增/自减1
incrby / decrbby incrby count 99, decrby count 99 自增自减指定步长

3. Hash键值类型

Hash类型用于存储结构化数据,员工信息,班级信息,学校信息,学生信息等有固定属性的对象
emp:1 -> name:smith
age:35
birthday:1988-01-30
height:178

Hash命令:

命令 示例 说明
hget hget emp:1 age 获取hash中key=age的值
hset hset emp:1 age 30 设置hash 中age=23
hmset 、hmget、hgetall hmset emp:1 age 30 name kaka、hmget emp:1 age name、hgetall emp:1 设置hash多个值、获取hash多个值、获取hash所有值
hdel hdel emp:1 age 删除emp:1的age
hexists hexists emp:1 name 检查是否存在
hlen hlen emp:1 获取指定长度

4. List列表类型

  1. List列表就是一系列字符串的“数组”,按插入顺序排序。
  2. 最大长度为2^32-1,可以包含大约40亿个元素。
  3. list 命令
    rpush listkey c b a --右侧插入
    lpush listkey f e d --左侧插入
    rpop listkey --右侧弹出,一次弹出一个元素
    lpop listkey --左侧弹出,一次弹出一个元素

5. Set集合与Zset集合类型

Set集合是字符串的无序集合,集合成员是唯一的
Zset集合是字符串的有序集合,集合成员是唯一的

set命令:

sadd 创建一个集合 例:sadd set1 a
看所有的数据: keys *
想看集合中所有元素: snumbers set1
多个set集合是可以进行运算的:

命令 用法 含义
sinter交集: sinter set1 set2: set1和set2中都出现的元素
sunion 并集: sunion set1 set2: set1和set2中全部出现过的元素
sdiff 差集: sdiff set1 set2: set1中有,set2中没有的元素
Zset命令:

zadd创建一个集合:zadd zset1 100 a
zadd zset1 101 b(这里的100,101代表的是后面元素的位置,默认按照升序排列)
zrange 用于输出指定范围的元素:zrange zset1 0 -1 [withscores]打印分数
zrangebyscore zset1 100 103:会输出分数为100(包括)-103(包括)的对应的元素

你可能感兴趣的:(redis)