当前位置: 首页 > ops >正文

【Redis】二、Redis常用数据类型命令学习

目录

一、String

1. SET、GET:设置与读取键值对:

2. DEL:删除键

 3. INCR、DECR:自增 / 自减(常用于计数器)

4. APPEND:内容追加

5. EXPIRE:设置过期时间 / 查看剩余时间(秒)

二、Hash

1. HSET:设置字段值

2. HGET:获取某个字段的值

3. HGETALL:获取整个对象

4. HDEL:删除字段

5. HEXISTS:字段是否存在

6. HINCRBY:对某个字段做数值加减

三、List

1. LPUSH、RPUSH:从两端添加元素

2. LPOP、RPOP:从两端弹出元素(读取并删除)

3. LRANGE:查看列表中所有元素

4. LLEN:获取列表长度

5. LREM:删除指定元素

6. LTRIM:截取列表元素

四、Set

1. SADD:添加元素

2. SREM:删除元素

3. SMEMBERS:获取所有元素

4. SISMEMBER:检查元素是否存在

5. SCARD:获取元素数量

6. SRANDMEMBER:随机获取元素

7. SINTER、SUNION、SDIFF:集合求交集、并集和差集

 五、Sorted Set

1. ZADD:添加元素

2. ZRANGE:按分数范围获取元素

3. ZREVRANGE:按分数降序获取元素

4. ZRANGEBYSCORE:按分数区间获取元素

5. ZREM:删除元素

6. ZSCORE:获取元素分数

7. ZINCRBY:增加元素分数

8. ZCARD:获取集合元素数量

9. ZCOUNT:统计分数区间内的元素数量


        今天继续学习redis,今天学习常用的数据类型命令。

一、String

        特点:一个 key 对应一个 value,value 可以是:字符串、数字、二进制数据(如图片base64)。

1. SET、GET:设置与读取键值对:

SET name "Alice"
GET name

可以在后面加一个EX,跟上时间(单位:s),指定过期时间,如,设置一个token值为10秒后过期

SET session:123 "token_xyz" EX 10    # 设置10秒后过期

2. DEL:删除键

DEL name

 3. INCR、DECR:自增 / 自减(常用于计数器)

当设置的value为整数时,可以使用下面的操作自增自减

SET views 0
INCR views        # views = 1
INCRBY views 10   # views = 11
DECR views        # views = 10
DECRBY views 5    # views = 5

4. APPEND:内容追加

如果设置的value为字符串,则可以向字符串末尾追加内容

SET msg "Hello"
APPEND msg ", world!"    # msg = "Hello, world!"

5. EXPIRE:设置过期时间 / 查看剩余时间(秒)

EXPIRE name 30 # 30秒后自动删除TTL name # 返回剩余生存时间

二、Hash

        Hash 是一个 键值对集合,它的结构像 JavaScript 中的对象或 Python 中的字典。Redis 中的 Hash 是 单个 key 下,包含多个 field-value 键值对

1. HSET:设置字段值

从 Redis 4.0 开始,HSET 可以一次设置多个 field。

HSET user:1 name "Alice"
HSET user:1 age 30 email "alice@example.com"

2. HGET:获取某个字段的值

HGET user:1 email

3. HGETALL:获取整个对象

HGETALL user:11) "age"
2) "12"
3) "email"
4) "test123@qq.com"

4. HDEL:删除字段

HDEL user:1 email

5. HEXISTS:字段是否存在

HEXISTS user:1 age

6. HINCRBY:对某个字段做数值加减

HINCRBY user:1 age 1

三、List

        Redis 的 List 是一个有序的字符串列表,支持从两端插入或弹出元素,常用于队列、栈、消息列表等场景。

1. LPUSH、RPUSH:从两端添加元素

LPUSH tasks "task1" "task2"
# tasks = ["task2", "task1"]
RPUSH tasks "task3"
# tasks = ["task2", "task1", "task3"]

2. LPOP、RPOP:从两端弹出元素(读取并删除)

LPOP tasks
# 返回 "task2",tasks = ["task1", "task3"]
RPOP tasks
# 返回 "task2",tasks = ["task1"]

3. LRANGE:查看列表中所有元素

LRANGE key start stop

索引从 0 开始,-1 表示最后一个元素,例如:LRANGE tasks 0 -1 可以获取整个列表

4. LLEN:获取列表长度

LLEN key

5. LREM:删除指定元素

LREM key count value

        count 如果大于0就是从左向右删除,反之则是从右向左删除 

6. LTRIM:截取列表元素

LTRIM key start stop

        保留start和stop区间内的元素。

四、Set

        Redis 的 Set 是一种非常实用的数据结构,它类似于数学中的集合概念,具有唯一性无序性

1. SADD:添加元素

SADD key member1 [member2 ...]     # 添加元素(返回新增元素数量)

2. SREM:删除元素

SREM key member1 [member2 ...]

3. SMEMBERS:获取所有元素

SMEMBERS key

4. SISMEMBER:检查元素是否存在

SISMEMBER key member

        返回1为存在,0为不存在

5. SCARD:获取元素数量

SCARD key

6. SRANDMEMBER:随机获取元素

SRANDMEMBER key [count]

7. SINTER、SUNION、SDIFF:集合求交集、并集和差集

SINTER key1 [key2 ...]    # 交集,返回两个集合相同的元素
SUNION key1 [key2 ...]    # 并集,返回两个集合中的所有元素
SDIFF key1 [key2 ...]     # 差集,返回第一个集合中存在,但其他集合中不存在的元素。

 五、Sorted Set

        Sorted Set整合了Set和List的特点,是 Redis 中功能最强大的数据类型之一,并通过 ** 分数(Score)** 实现了灵活的排序和范围查询能力。

1. ZADD:添加元素

ZADD key score1 member1 [score2 member2 ...]

2. ZRANGE:按分数范围获取元素

ZRANGE key start stop [WITHSCORES]

3. ZREVRANGE:按分数降序获取元素

ZREVRANGE key start stop [WITHSCORES]

4. ZRANGEBYSCORE:按分数区间获取元素

ZRANGEBYSCORE key min max [WITHSCORES] [LIMIT offset count]

5. ZREM:删除元素

ZREM key member1 [member2 ...]

6. ZSCORE:获取元素分数

ZSCORE key member

7. ZINCRBY:增加元素分数

ZINCRBY key increment member

8. ZCARD:获取集合元素数量

ZCARD key

9. ZCOUNT:统计分数区间内的元素数量

ZCOUNT key min max
http://www.xdnf.cn/news/7794.html

相关文章:

  • 电感在断开的时候会按原来的电流方向流动这是什么定理?
  • Baklib内容中台的构建要点是什么?
  • 【性能测试】jvm监控
  • 前端JavaScript学习-动态编码-基础
  • 【每周一个MCP】:将pytdx封装成MCP
  • NFM算法解析:如何用神经网络增强因子分解机的特征交互能力?
  • 基于Qt的app开发第十天
  • 每日leetcode
  • opencv的图像卷积
  • 物联网相关词汇
  • Pandas:数据分析步骤、分组函数groupby和基础画图
  • matlab二维随机海面模拟
  • C++之模板进阶(探索C++模板:非类型参数与特化技巧)
  • Linux网络 网络基础一
  • 山东大学高级程序设计期末复习
  • BERT、GPT-3与超越:NLP模型演进全解析
  • 大语言模型与人工智能:技术演进、生态重构与未来挑战
  • sqli-labs第二十关——POST—cookie注入
  • 十四、Hive 视图 Lateral View
  • RabbitMQ的其中工作模式介绍以及Java的实现
  • 【算法创新+设计】灰狼算法GWO+扰动算子,求解大规模TSP问题利器
  • [测试_3] 生命周期 | Bug级别 | 测试流程 | 思考
  • AI办公提效,Deepseek + kimi生成ppt
  • 《从零理解SNMP协议:网络监控系统的设计与实现》
  • JAVA项目中常见的注解总结
  • COMPUTEX 2025 | 广和通5G AI MiFi解决方案助力移动宽带终端迈向AI新未来
  • 电商系统搭建的关键细节与技术实践
  • 工作安排小K
  • springboot使用xdoc-report包导出word
  • 四、【API 开发篇 (上)】:使用 Django REST Framework 构建项目与模块 CRUD API