当前位置:网站首页>Redis:Redis的数据结构、key的操作命令
Redis:Redis的数据结构、key的操作命令
2022-07-03 13:29:00 【dengfengling999】
目录:
(1)Redis的5种数据结构
(2)key的操作命令1
(3)key的操作命令2
(4)key的操作命令3
(1)Redis的5种数据结构
1.字符串类型 string
字符串类型是Redis中最基本的数据结构,它能存储任何类型的数据,包括二进制数
据,序列化后的数据,JSON化的对象甚至是一张图片。最大512M。
2.列表类型 list
Redis列表是简单的字符串列表,按照插入顺序排序,元素可以重复。你可以添加一个元素到列表的头部(左边)或者尾部(右边),底层是个链表结构。
3.集合类型 set
Redis的Set是string类型的无序无重复集合。
4.哈希类型 hash
Redis hash 是一个string类型的field和value的映射表,hash特别适合用于存储对象。
5.有序集合类型 zset (sorted set)
Redis 有序集合zset和集合set一样也是string类型元素的集合,且不允许重复的成员。
不同的是zset的每个元素都会关联一个分数(分数可以重复),redis通过分数来为集合中的成员进行从小到大的排序。
Redis有一系列的命令来操作Redis的数据结构
(2)key的操作命令1
1.keys
语法:keys pattern
作用:查找所有符合模式pattern的key. pattern可以使用通配符。
通配符:
- *:表示0或多个字符,例如:keys * 查询所有的key。
- ?:表示单个字符,例如:wo?d , 匹配 word , wood
- [] :表示选择[]内的一个字符,例如wo[or]d, 匹配word, wood, 不匹配wold、woord
keys * :查询所有的key
keys k * :通配匹配,查询所有以k开头的key
keys h*o :查询所有以h开头,以o结尾的key
keys h?o :查询所有以h开头,o结尾,并且中间只有一个字符的key
keys h[abc]llo :查询所有以h开头,以llo结尾,并且h后面只能去abc中一个字符的key
(3)key的操作命令2
1.exists
语法:exists key[key…]
作用:判断key是否存在
返回值:整数,存在key返回1,其他返回0。使用多个key,返回存在的key的数量。
例如:返回0或1
返回存在个数:
Redis默认有16个库,有这种需求把一个数据移动到第二个库:(用的不多)
2.move
语法:move key db
作用:移动key到指定的数据库,移动的key在原库被删除。
返回值:移动成功返回1,失败返回0.
把k移动到2号库:
3.ttl
语法:ttl key
作用:查看key的剩余生存时间(ttl: time to live),以秒为单位。
返回值:
- -1 :没有设置key的生存时间, key永不过期。
- -2:key不存在
例如:2号库没有k1,返回-2,1号库有k1,返回-1
4.expire
语法:expire key seconds
作用:设置key的生存时间,超过时间,key自动删除。单位是秒。
返回值:设置成功返回数字 1,其他情况是 0 。
给k2设置存在时间:设置20秒超过时间删除
(3)key的操作命令3
1.type
语法:type key
作用:查看key所存储值的数据类型
返回值:字符串表示的数据类型
- none (key不存在)
- string (字符串)
- list (列表)
- set (集合)
- zset (有序集)
- hash (哈希表)
例如:
2.rename (key不推荐修改)
语法:rename key newkey
作用:将key改为名newkey。当 key 和 newkey 相同,或者 key 不存在时,返回一个错误。
当 newkey 已经存在时, RENAME 命令将覆盖旧值。
例如:重命名hello:
3.del
语法:del key [key…]
作用:删除存在的key,不存在的key忽略。
返回值:数字,删除的key的数量。
例如:不存在的忽略
边栏推荐
- jvm-类加载
- Go language unit test 4: go language uses gomonkey to test functions or methods
- Qt学习19 Qt 中的标准对话框(上)
- Qt学习25 布局管理器(四)
- Go language unit test 5: go language uses go sqlmock and Gorm to do database query mock
- Golang - command line tool Cobra
- Field problems in MySQL
- GoLand 2021.2 configure go (go1.17.6)
- Uio-66-cooh loaded bendamostine | hydroxyapatite (HA) coated MIL-53 (FE) nanoparticles | baicalin loaded manganese based metal organic skeleton material
- jvm-对象生命周期
猜你喜欢
[technology development-24]: characteristics of existing IOT communication technology
jvm-类加载
Go language web development series 26: Gin framework: demonstrates the execution sequence of code when there are multiple middleware
Example analysis of QT learning 18 login dialog box
Bidirectional linked list (we only need to pay attention to insert and delete functions)
Qt学习17 对话框及其类型
全局事件总线
信创产业现状、分析与预测
[email protected](Fe)|甘草次酸修饰金属有机框架材料UiO-66-NH2(简称UiO-66-NH2-GA)"/>
MIL-100( Fe) 包裹小分子阿司匹林形成[email protected](Fe)|甘草次酸修饰金属有机框架材料UiO-66-NH2(简称UiO-66-NH2-GA)
SQL Injection (POST/Select)
随机推荐
Which securities company has the lowest Commission for opening an account online? I want to open an account. Is it safe for the online account manager to open an account
Nucleic acid modified metal organic framework drug carrier | pcn-223 metal organic framework encapsulated ad adamantane | zif-8 encapsulated adriamycin (DOX)
Another industry has been broken by Chinese chips. No wonder the leading analog chip companies in the United States have cut prices and sold off
【BW16 应用篇】安信可BW16模组与开发板更新固件烧录说明
JS general form submission 1-onsubmit
Common network state detection and analysis tools
Summary of common error reporting problems and positioning methods of thrift
Selenium browser (1)
Go language web development series 30: gin: grouping by version for routing
树的深入和广度优先遍历(不考虑二叉树)
C language standard IO function sorting
Replace the GPU card number when pytorch loads the historical model, map_ Location settings
Metal organic framework material zif-8 containing curcumin( [email protected] Nanoparticles) | nano metal organic framework carry
Go language web development series 29: Gin framework uses gin contrib / sessions library to manage sessions (based on cookies)
怎样删除对象的某个属性或⽅法
[acnoi2022] guess numbers
Vite project commissioning
Mastering the cypress command line options is the basis for truly mastering cypress
消息订阅与发布
太阳底下无新事,元宇宙能否更上层楼?