千家信息网

Redis有哪些数据类型

发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,这篇文章主要介绍"Redis有哪些数据类型",在日常操作中,相信很多人在Redis有哪些数据类型问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"Redis有哪些数据类型"
千家信息网最后更新 2026年11月03日Redis有哪些数据类型

这篇文章主要介绍"Redis有哪些数据类型",在日常操作中,相信很多人在Redis有哪些数据类型问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"Redis有哪些数据类型"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

Redis数据类型

redis的命令是忽略大小写的

一、 String类型

赋值

> set name 王五
> select 1
> set name zhangsan
> get name

设置/获取多个键值
> mset age 25 gender male city 杭州
> get age
> mget age city

取值再赋值
> getset s2 111
> getset s2 222

尾部追加值
> append name hello

删除
> del s2

数值增减

递增
当存储的字符串是整数时,使用命令incr使当前键值加1,返回递增后的值
> incr num
指定步长
> incrby num 2

递减
> decr num
> decrby num 2

应用场景,存储商品信息
> incr items:id

二、Hash类型

hset命令不区分插入和更新操作,插入操作返回1,更新返回0

一次设置一个字段
> hset user name lizi
一次设置多个字段
> hmset user age 25 gender male
当字段不存在时赋值,存在则不执行任何操作
> hsetnx user address hangzhou

一次获取一个字段
> hget user name
一次获取多个字段
> hmget user name age
一次获取所有字段值
> hgetall user

删除一个或多个字段,返回被删除的字段个数
> hdel user age address

数字增加
> hset user age 20
> hincrby user age 2
> hget user age

判断字段是否存在
> hexists user age

只获取字段名或字段值
>hkeys user
>hvals user

获取字段数量
> hlen user

应用场景,存储商品信息
> hmset items:1001 id 1001 name iphonex price 1999 color black
> hmset items:1002 id 1002 name iphonex price 1999 color black
获取商品信息
> hget items:1001 name
> hgetall items:1001

三、List类型

向列表左边添加元素
> lpush list 0 9 8
> lpush list:1 1 2 3 4

向列表右边添加元素
> rpush list:1 5 6 7

查看列表
> lrange list:1 0 3
> lrange list:1 0 -1 读所有

从列表两端弹出元素,返回移除的元素值
> lpop list:1
> rpop list:1

获取列表中元素的个数
> llen list:1

删除列表中指定的值
LREM命令会删除列表中前count个值为value的元素,返回实际删除的元素个数。根据count值的不同,该命令的执行方式会有所不同:
当count>0时, LREM会从列表左边开始删除。
当count<0时, LREM会从列表后边开始删除。
当count=0时, LREM删除所有值为value的元素。
> lrem list:1 1 5
> lrem list:1 -1 5
> lrem list:1 0 5

获取指定索引的元素值,索引从0开始
> lindex list:1 0

设置指定索引的元素值
> lset list:1 0 11

保留列表指定范围的元素
> ltrim list:1 0 2

向指定元素值的前后插入元素,返回列表的元素个数
> linsert list:1 before 2 10
> linsert list:1 after 2 10

将一个元素从一个列表移到另一个列表
> rpoplpush list:1 list:2

应用场景,商品评论
> lpush items:comment:1001 '{"comment":"good product","date":1430295077289}'
> lpush items:comment:1001 '{"comment":"bad product","date":1430295078888}'

四、 Set类型,元素不重复,无序

添加
> sadd set1 a b c

删除
> srem set1 b

获取
> smembers set1

判断元素是否存在,存在返回1,不存在返回0
> sismember set1 a

差集运算,属于A但不属于B的元素构成的集合,A-B
> sadd setA 1 2 3
> sadd setB 2 3 4
> sdiff setA setB
> sdiff setB setA

交集,A ∩ B
> sinter setA setB

并集,A ∪ B
> sunion setA setB

获取元素的个数
> scard setA

随机弹出一个元素
> spop setA

五、SortedSet类型,zset,有序

添加
> zadd english:scoreboard 80 zhangsan 70 lisi 90 wangwu
> zadd english:scoreboard 60 maliu
修改
> zadd english:scoreboard 85 zhangsan
获取元素的分数
> zscore english:scoreboard maliu
删除元素
> zrem english:scoreboard maliu
获取排名在某个索引范围的元素值列表

按照分数值从小到大排列
> zrange english:scoreboard 0 1
> zrange english:scoreboard 0 -1
> zrange english:scoreboard 0 -1 withscores
按照分数值从大到小排列
>zrevrange english:scoreboard 0 -1
>zrevrange english:scoreboard 0 -1 withscores

获取指定分数范围内的元素
> zrangebyscore english:scoreboard 80 90 withscores
> zrangebyscore english:scoreboard 80 90 withscores limit 1 2

增加某个元素的分数,返回更改后的分数
> zincrby english:scoreboard 5 wangwu

获取集合中元素的数量
> zcard english:scoreboard

获取指定分数内的元素个数
> zcount english:scoreboard 80 90

按照排名指定索引范围删除元素
> zremrangebyrank english:scoreboard 0 1

按照分数范围删除元素
> zremrangebyscore english:scoreboard 80 90

获取元素的排名
从小到大
> zrank english:scoreboard lisi
从大到小
> zrevrank english:scoreboard lisi

应用场景,商品销售排行榜
> zrank items:sellsort 9 1001 10 1002
> zincrby items:sellsort 1 1001
> zrevrange items:sellsort 0 9 withscores

设置key的生存时间
> set test hello
> expire test 5
> ttl test 【-1没有设置存活时间,-2已删除】
> get test
> persist test

匹配查询key
> keys user*

数据库中是否存在key
> exists user

删除key
> del user

重命名key
> rename user userabc

返回数据类型
> type setA

到此,关于"Redis有哪些数据类型"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!

元素 字段 类型 数据 个数 分数 命令 商品 索引 范围 场景 多个 学习 应用 信息 数值 存储 不同 从小到大 从小 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 河南云网互联网络科技有限公司 科技互联网龙头 网络科技有限互联网 互联网与未来科技 成都互联网科技公司 互联网 视角下的科技创新 北京华百购互联网科技有限公司 昭通云南众福互联网科技有限公司 汽车互联网创新科技园 全球顶尖互联网科技公司 互联网科技商业 米聚互联网科技南京有限公司排面 内蒙古九一互联网科技 东莞新华互联网科技学校 广州新华互联网科技学校电竞方面 烟台灵鸽互联网科技有限公司 上海钢联属于互联网科技股吗 有人说阿里系是互联网科技企业 易租星互联网科技有限公司 互联网科技快速发展优美句子 云信互联网科技有限公司 科技与互联网发展 亿策互联网科技 海南购全球互联网科技 崇明区互联网教育科技售后服务 宜昌元轩互联网科技有限公司 明优互联网科技有限公司 元气玛特互联网科技公司是外包吗 云鲸互联网络科技有限公司 数字科技和互联网金融哪个好
0