Redis数据库常用语句
- 前言
- 1. 键(Key)的基本操作
- 1.1 增加新的键值对
- 1.2 访问键的值
- 1.3 修改键值对
- 1.4 键值对的删除
- 1.5 判断键值对是否存在
- 1.6 获取所有键
- 1.7 删除所有的键:
- 2. Redis 中的列表
- 2.1 列表加入新元素
- 2.2 获取列表长度
- 2.3 获取指定下标的元素
- 2.4 获取指定范围内的列表值
- 2.5 列表元素出栈
- 2.6 列表值裁剪
- 3. 集合
- 3.1 添加元素
- 3.2 获取集合中的元素个数
- 3.3 移除集合中的元素
- 3.4 判断元素是否在集合中
- 3.5 获取集合间的交集
- 3.6 获取集合的所有元素
- 集合元素移动
- 结尾
前言
操作系统:Windows10 家庭版本
开发环境:Pycharm Comunity 2022.3
Python解释器版本:Python3.8
第三方库:Redis
1. 键(Key)的基本操作
1.1 增加新的键值对
基本语法是:
set keyname value
使用下面这条语句就能设置name的值为"H2"了,它将返回 “OK” :
set name H2
1.2 访问键的值
基本语法:
get keyname
例如:
get name
它将返回对应的值:
如果访问的键不存在,它将返回空 (真的啥也没有):
1.3 修改键值对
修改值
set name new_value
这个和新增值一样,原理是使用原来的键值对替代旧的键值对:
修改键
rename oldname newname
使用示例如下,名称已经被修改完毕,旧的键一去不返了:
1.4 键值对的删除
基本语法:
del keyname
就如下图所示,将键值对删除:
1.5 判断键值对是否存在
exists keyname
这条语句像是抛出一个问题,keyname存在吗?如果存在将返回1,不存在将返回0
如下图:
1.6 获取所有键
使用这个即可
keys *
将打印所有的键名:
1.7 删除所有的键:
删除 当前 数据库的所有键值对
flushdb
删除 所有 数据库的键值对
flushall
这两条删除命令切记需要慎用
2. Redis 中的列表
我认为比起列表它更像是堆栈
2.1 列表加入新元素
列表无需新建或者初始化,直接往里面放值就行了:
lpush list H2 F2 O2 CL2
它将返回操作后列表的长度:
lpush 的意思是从左边压入若干个元素
还有一条从右边压入元素的语句如下:
rpush listname name1 name2 name3
2.2 获取列表长度
llen listname
2.3 获取指定下标的元素
lindex listname i
值得一提的是它的编号顺序和堆栈一样,如果你没有数据结构基础你可以去看看栈的原理来理解它:
2.4 获取指定范围内的列表值
lrange listname x y
可以看到将所有元素打印出来了,此刻你就能理解 LLEN 的重要性:
2.5 列表元素出栈
下面这条指令将自动弹出列表的第一个元素
lpop list
注意 被 pop 的元素将不复存在,如果你想这个值以后依然能够被使用,那你可以尽量选择索引号获取列表值的方式:
lpop 的意思是从左边弹出一个元素
还有一条从右边弹出元素的语句如下:
rpop listname
2.6 列表值裁剪
ltrim list 1 2
再次范围之外的元素将被删除,谨慎使用 !
3. 集合
顾名思义,集合就是集合,具有单一性,无序性,确定性。
3.1 添加元素
与列表一样,向集合中直接添加元素会新建集合
使用sadd语句向集合中添加一个或多个元素
sadd set name1 name2 name3
会返回集合的元素个数
3.2 获取集合中的元素个数
和列表中的llen()
scard keyname
3.3 移除集合中的元素
使用下面的语句来 随机移除集合中的一个元素
spop keyname
被移除的元素将不复存在
3.4 判断元素是否在集合中
sismemroy keyname element
如果是在集合中则返回1,否则返回0
3.5 获取集合间的交集
使用 sinter 来获取集合中的交集:
sinter setname1 setname2
3.6 获取集合的所有元素
smembers keyname
如图:
集合元素移动
下面这条语句会把source集合中的member移动到destination集合
SMOVE source destination member
结尾
本节学习了Redis数据库的一些常用的操作,学海无涯,还有很多更高级、高效的用法没学。
下节我们将学习使用Python来操作我们的Redis数据库。