redis操作命令总结

本文涉及的产品
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
云数据库 Tair(兼容Redis),内存型 2GB
简介: redis操作命令总结

redis操作命令总结

先来介绍一下这篇文章的特点:最主要的是每条命令后面添加了详细的解释,以及英文单词的意思,便于大家理解,我也没想到有生之年我会这么多单词,哈哈哈哈.还有就是有的命令后面gen了实例,方便理解,鬼知道我写这篇文章花了多久,希望对大家有所帮助,这就是对我最大的鼓励.(虽然检查了很多遍,但是内容实在是多,所以有错误的请大家指出.我会进行更改)

1.启动redis服务端和客户端

服务端启动redis-server(server服务器)

客户端启动:redis-cli  (cli代表的就是client客户端)需要新建一个终端窗口进行操作

不管你在哪个目录下,随时输入这条命令,都是可以进入客户端的

具体的实例可以点击链接进入查看具体使用实例:flask框架(四)

2.redis操作之string类型(最常使用,请掌握)

2.1设置(增加)数据

1/单个键值对set key value(set设置,key键,value值)

2/给键值对设置有效期setex key second value  (second秒,直接填数值即可,默认的单位是秒)

3/设置多个 键值对:mset key1 value1 key2 value2(m可以是many多的意思)

4/追加值:append key value(append增加,这个单词大家肯定不陌生)

2.2获取数据

1/获取单个值get key(get得到)

2/获取多个值:mget key1 key2

2.3 通过键查看值

1/查看所有的键keys *

2/查看以a开头的键:keys 'a*'

3/查看键是否存在:exists key1(exist存在)

4/查看键的类型:type key1(type类型)

2.4 删除键值对

1/删除键:del key1 key2(del是delete删除的意思)

2/设置键有效期,删除键:expire key seconds(seconds是秒second的复数形式,说明单位是秒,我们可以设置很长时间)

3/查看键的有效期:ttl key(对不起,这个我实在是想不出单词和他对应了>.<...)


3.redis操作之hash类型

3.1增加数据

1/在散列键key中关联给定的域值对(filed-value pair):hset key field value

说明:如果域field之前没有关联值,那么命令返回1,如果已经关联过了,那么新值覆盖旧值,返回0


2/给一个散列键里面设置多个域值对;hmset key filed1 value1 field2 value2....

实例:hmset name wangtao ha xiaoyan xi代表的是给散列name里面存了wangtao-ha和xiaoyan-xi这两个域值对

3.2获取数据

1/ 返回散列键 key 中,域 field 所关联的值:hget key field

说明:如果域field没有关联值,那么返回nil


2/获取多个域所关联的值:hmget key filed1 field2....

实例:hmget name wangtao xiaoyan获取散列键name里面域wangtao和xiaoyan所关联的值


3/获取散列键中所有的域:hkeys key

实例:hkeys name获取散列键name里面所有的域

3.3 删除数据

1/删除散列键 key 中的一个或多个指定域,以及那些域的值:hdel key filed1 filed2...

说明:不存在的域将被忽略。命令返回被成功删除的域值对数量。

3.4 记忆小窍门

1/之前字符串类型中的操作命令掌握之后,我们再来看hash类型的命令,会发现好多命令都是相同的,只是在前面加了一个专属hash类型的标识h,大家可以看hget和hset等等

2/其实hash类型就是相当于给key里面存一个一个的field-value键值对,比字符串类型的多了一层而已,大家学完再回顾一遍就会发现不难了

4.redis操作之list类型

4.1插入数据

1/左侧插入数据:lpush key value1 value2..(l代表的是left左侧可以形象的理解为从左向右推)

ps:(也许这里你会发现个小问题,就是自己设置完值后,在取值的时候,发现值的顺序变成了倒序,不要怀疑你的眼睛,其实它没问题,当然也不是你的问题,给大家简单的解释一下这个原理:就是我们从左向右推进去,那么随着第二个值推进去,第一个值是不是就被推到里面了,我们一般的排序或者下标索引是不是从左开始标号0123,那么是不是第二个就变成了第一个呢?)


2/右侧插入数据:rpush key value1 value2..(r代表的是right右侧,可以结合前面理解为从右向左侧推)


3/指定key,旧元素位置前插入元素

linsert key before oldvalue newvalue(insert是插入的意思,l可以理解为时list列表的操作方法,oldvalue指的是旧元素,newvalue指的就是要插入的新元素)


4/指定key,旧元素位置后插入元素

linsert key after oldvalue newvalue(这里的灵魂单词便是after后面的意思,和前面的before一样,只需要记俩单词即可)

4.2获取数据

1/获取从编号start位置到编号stop位置的元素

lrange key start stop(l可以理解为list列表,range就是范围的意思,start是开始,stop是结束,这样应该就好记忆一些了)

tip:(最后一个元素的下标索引可以使用-1)

实例:lrange list 0 -1查看列表的所有值,从第0号元素开始到最后一个元素


2/设置指定索引位置的元素值:

lset key index value(l依旧是list,index指的是索引下标)


4.3删除数据

1/将key域列表中,前count次,值为value的元素删除:

lrem key count value(l还是list,rem是remove移除的意思,count就是次数)

tip:(这里有一个小点:当count>0的时候从头开始数,当count<0的时候,从屁股开始数"请原谅我的粗鲁,话糙理不糙",当count=0的时候查找的就是所有的元素)


5. redis的操作之set

5.1添加元素

1/向key域(集合)中添加多个数据

sadd key member1 member2...(s代表的就是set集合,add就是增加的意思,member就是成员的意思,意思就是给key里面添加成员(元素))

特点:有序.不重复

5.2获取元素

获取key域集合的所有元素:

smembers key(s就是set集合,members是member成员(元素)的复数形式,就是查所有的元素了)

5.3删除元素

删除指定的key元素的值:

srem key value(s就是set集合,rem就是remover删除的意思)


6. redis的操作之zset

6.1增加数据

向key域结合中添加多个score1,member1数据

zadd key score1 member1 score2 member2...(z就是zset类型,add是增加的意思,score是分数和记录的意思,member就是成员的意思,意思就是记录一个成员(元素),记录一个成员(元素)吧)

6.2获取数据

1/返回指定范围内的member元素:

zrange key start stop(z就是zset类型,range就是范围的意思,start就是开始,stop就是停止)

start:为开始索引,包含这个索引的元素

stop:为屁股索引,包含,其中-1代表的是最后一个元素


2/获取min和max权值之间(包含)的成员值:

zrangebyscore key min max(z就是zset类型,range就是范围,by就是通过,score分数(在增加数据的时候,用到了这个键名),合起来翻译就是通过score这个键从权重值min(最小)和max(最大值)这个范围内获取成员值)

权值值的就是权重值


3/获取key域(集合)中member的score的权重值:

zscore key member


6.3删除元素

1/删除域(集合)中指定的元素值:

zrem key member1 member2....

2/删除集合中权重在指定范围内(min,max)的元素

zremrangebyscore key min max(这句话的意思和之前解释的没什么差别,只有rem是remover删除的前三个字母,就是通过score查找那个范围内的元素进行删除)


查看更多命令(估计你也不想查了,但是还是象征性的放一个链接吧,万一哪天脑子一热或者工作需要想查查呢):http://www.redis.cn

相关文章
|
5月前
|
存储 缓存 监控
Redis设计与实现——Redis命令参考与高级特性
Redis 是一个高性能的键值存储系统,支持丰富的数据类型(字符串、列表、哈希、集合等)和多种高级功能。本文档涵盖 Redis 的核心命令分类,包括数据类型操作、事务与脚本、持久化、集群管理、系统监控等。特别介绍了事务的原子性特性、Lua 脚本的执行方式及优势、排序机制、发布订阅模型以及慢查询日志和监视器工具的使用方法。适用于开发者快速掌握 Redis 常用命令及其应用场景,优化系统性能与可靠性。
|
1月前
|
存储 缓存 NoSQL
Redis基础命令与数据结构概览
Redis是一个功能强大的键值存储系统,提供了丰富的数据结构以及相应的操作命令来满足现代应用程序对于高速读写和灵活数据处理的需求。通过掌握这些基础命令,开发者能够高效地对Redis进行操作,实现数据存储和管理的高性能方案。
76 12
|
1月前
|
存储 消息中间件 NoSQL
【Redis】常用数据结构之List篇:从常用命令到典型使用场景
本文将系统探讨 Redis List 的核心特性、完整命令体系、底层存储实现以及典型实践场景,为读者构建从理论到应用的完整认知框架,助力开发者在实际业务中高效运用这一数据结构解决问题。
|
2月前
|
存储 缓存 人工智能
Redis六大常见命令详解:从set/get到过期策略的全方位解析
本文将通过结构化学习路径,帮助读者实现从命令语法掌握到工程化实践落地的能力跃迁,系统性提升 Redis 技术栈的应用水平。
|
3月前
|
NoSQL Redis
Lua脚本协助Redis分布式锁实现命令的原子性
利用Lua脚本确保Redis操作的原子性是分布式锁安全性的关键所在,可以大幅减少由于网络分区、客户端故障等导致的锁无法正确释放的情况,从而在分布式系统中保证数据操作的安全性和一致性。在将这些概念应用于生产环境前,建议深入理解Redis事务与Lua脚本的工作原理以及分布式锁的可能问题和解决方案。
150 8
|
5月前
|
存储 缓存 NoSQL
Redis中的常用命令-get&set&keys&exists&expire&ttl&type的详细解析
总的来说,这些Redis命令提供了处理存储在内存中的键值对的便捷方式。通过理解和运用它们,你可以更有效地在Redis中操作数据,使其更好地服务于你的应用。
379 17
|
5月前
|
消息中间件 NoSQL Linux
Redis的基本介绍和安装方式(包括Linux和Windows版本),以及常用命令的演示
Redis(Remote Dictionary Server)是一个高性能的开源键值存储数据库。它支持字符串、列表、散列、集合等多种数据类型,具有持久化、发布/订阅等高级功能。由于其出色的性能和广泛的使用场景,Redis在应用程序中常作为高速缓存、消息队列等用途。
875 16
|
5月前
|
JSON NoSQL Redis
在Rocky9系统上安装并使用redis-dump和redis-load命令的指南
以上步骤是在Rocky9上使用redis-dump和redis-load命令顺利出行的秘籍。如果在实行的过程中,发现了新的冒险和挑战,那么就像一个勇敢的航海家,本着探索未知的决心,解决问题并前进。
180 14
|
5月前
|
消息中间件 NoSQL Unix
Redis的基本特性以及其基础命令用法
这只是冰山一角,Redis的强大功能和简洁的操作方法值得我们深入了解和掌握,是复杂数据问题解决的有力工具。所以,来一场有趣的Redis冒险吧!
179 6
|
10月前
|
NoSQL 应用服务中间件 API
Redis是如何建立连接和处理命令的
本文主要讲述 Redis 是如何监听客户端发出的set、get等命令的。
1547 160