redis中的5中数据结构

redis 中键都是字符串类型

所说的5中数据结构指定的是值的结构

1、String

单只存储(存一个具体值,也可以存储一个java中的对象,对象是被序列化成json格式的字符串)

set key value:设定键值

get key:获取键的值

del key:删除键

keys *:查看所有的键

计数器

incr 键(键的值必须是整数):键自增1

decr 键:键自减1

2、Hash

redis hash 是一个 string 类型的 field 和 value 的映射表,hash 特别适合用于存储对象,存的是字符串和字符串值之间的映射,比如要存储用户购物车等信

hset key 属性 值:设定属性和属性的值

hget key 属性:取得键的属性对应的值

hdel key 属性:删除某个属性

hlen key:返回key下属性的数量

hgettall key:返回key下所有属性的属性值

3、List(列表)

有序集合;里面可以存储重复元素

lpush key val:从左边向集合添加元素

lpush key val从左边向集合添加元素

rpush key val

lpop key从头删除

rpop key 从尾删除

lrange key 开始位置 结束位置

4、Set(集合)

无序不重复的集合

sadd key val

srem key val

smembers key:查看指定key下所有的值

scard key:查看key下的元素数量

5、zset(有序(排序)不重复的集合)

redis zset 也是不允许重复的成员,但是是有序的。

不同的是每个元素都会关联一个 double 类型的分数。redis 正是通过分数来为集合中的成员进行从小到大的排序。

zset 的成员是唯一的,但分数(score)却可以重复。

zadd key score member[[score member]..] :往有序集合 key 中加入带分值元素

zrem key member[member...] :从有序集合 key 中删除元素

zscore key member :返回有序集合 key 中元素 member 的分值

zcard key :返回有序集合 key 中元素个数

6、设置失效时间

有时候我们并不希望 redis 的 key 一直存在。例如缓存,验证码等数据,我们希望它们能在一定时间内自动的被销毁。redis 提供了一些命令,能够让我们对 key设置过期时间,并且让 key 过期之后被自动删除

EX 表示以秒为单位PX 表示以毫秒为单位 (EX,PX 不区分大小写)

set name jim EX 30 设置失效时间为 30 秒

set name jim PX 30 设置失效时间为 30 毫秒

ttl 键 查看剩余时间(秒)

pttl 键 查看剩余时间(毫秒)

相关推荐
husterlichf2 分钟前
MYSQL 常用数值函数 和 条件函数 详解
数据库·sql·mysql
我的golang之路果然有问题5 分钟前
快速了解redis,个人笔记
数据库·经验分享·redis·笔记·学习·缓存·内存
卡皮巴拉爱吃小蛋糕34 分钟前
MySQL的MVCC【学习笔记】
数据库·笔记·mysql
农民也会写代码35 分钟前
dedecms织梦arclist标签noflag属性过滤多个参数
开发语言·数据库·sql·php·dedecms
m0_7482329241 分钟前
你还在手动画ER图吗?让SQL自动生成ER图,轻松解决作业难题!
数据库·sql·oracle
清流君44 分钟前
【MySQL】数据库 Navicat 可视化工具与 MySQL 命令行基本操作
数据库·人工智能·笔记·mysql·ue5·数字孪生
邂逅岁月44 分钟前
MySQL表的增删改查初阶(下篇)
数据库·sql·mysql
道友老李44 分钟前
【存储中间件】Redis核心技术与实战(五):Redis缓存使用问题(BigKey、数据倾斜、Redis脑裂、多级缓存)、互联网大厂中的Redis
redis·缓存·中间件
Python_金钱豹1 小时前
Text2SQL零代码实战!RAGFlow 实现自然语言转 SQL 的终极指南
前端·数据库·sql·安全·ui·langchain·机器人
静听夜半雨1 小时前
CANoe入门——3、新建LIN工程及LIN DataBase(LDF文件)的创建
网络·数据库·c++·编辑器