Redis基础【完整版】:简介和常用命令、全面key操作、五种数据类型的增删改查、Redis与Python交互(附源代码)

目录

一、Redis简介和常用命令

1、Reids简介

2、redis常用命令

进入redis

查看数据库版本

切换数据库

退出redis

二、全面key操作

1、查看当前数据有哪些键

 2、创建数据

 3、获取数据

4、获取数据如果显示是十六进制,那么重新进入redis

5、查看key是否存在

6、查看名称中包含a的key 

7、查看key的值的类型

8、设置键的过期时间和查看过期时间

三、五种数据类型的增删改查 

1、string — 字符串

创建一个字符串

添加数据

删除数据

设置多个键值

获取多个值

删除多个键

2、list—列表

创建列表和添加数据

查看数据

查看某个数据

插入多条数据

删除数据

3、hash类型—哈希 

创建hash类型

查看所有hash类型中的值

查看hash类型中的单个值 

查询所有的值

查询所有的键

4、set—集合 

创建集合和添加数据

查看集合中的数据

删除数据 

指定删除 

5、zset—有序集合 

创建有序集合和添加数据

查看数据 (查看成员)

 通过分值去查看成员

四、redis与python交互

2、代码演示

1、附源代码


一、Redis简介和常用命令

1、Reids简介

  • redis:非关系型数据库
  • 使用键值对存储数据
  • 存储的时候是单条数据,并且数据之间没有联系。

2、redis常用命令

  • redis命令可参考以下文档

Redis 命令参考 — Redis 命令参考http://doc.redisfans.com/

  • 进入redis

命令:redis-cli

  • 查看数据库版本

命令:redis-cli -v

 

  • 切换数据库

  • redis的数据库默认有16个,通过0~15来标识,默认值选择第一个数据库

例(切换到第三个数据库):select 2         

  • select 后面是下标,注意命令结尾不加分号

 

  • 退出redis

命令:exit

 



二、全面key操作

1、查看当前数据有哪些键

命令:keys *

 

 2、创建数据

命令:set 键名 值

 3、获取数据

命令:get 键名

4、获取数据如果显示是十六进制,那么重新进入redis

命令:redis-cli --raw

  • 例如:创建一个a2键,并向里面写入中文数据“大海”,并读取数据,发现数据被写为了十六进制

  • 先退出redis,输入exit后回车

  • 然后再次进入数据,输入命令:redis-cli --raw

 

  • 接着进入第三个数据库,重新查看a2的值 ,这时我们才能读取到中文数据

 

5、查看key是否存在

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

命令:exists key

 

6、查看名称中包含a的key 

命令:keys a*

7、查看key的值的类型

 命令:type 键名

8、设置键的过期时间和查看过期时间

设置键的过期时间的命令:expire 键名 seconds (以秒为单位)

查看过期时间的命令:ttl 键名 (没有数据就返回 -2)

  •  设置键的过期时间后,当了过期时间,该键自动会被系统删除



三、五种数据类型的增删改查 

1、string — 字符串

  • 创建一个字符串

命令:set 键名 值

  • 添加数据

命令:append 键名 值          (在已有的数据后追加数据,返回值表示键中有的字符个数)

  • 删除数据

命令:del 键名

 

  • 设置多个键值

命令:meset 键1 值1 键2 值2 键3 值3……

  • 获取多个值

命令:mget  键1 键2 键3……

  • 删除多个键

命令:del 键1 键2 键3……

2、list—列表

  • 创建列表和添加数据

  • 执行添加数据的操作时会自动创建列表

左侧添加命令:lpush 键名 值        (lpush表示从左侧添加数据)

右侧添加命令:rpush 键名 值        (rpush表示从右侧添加数据)

 

p1键相当于:p1 = ['hallo']

  • 查看数据

命令:lrange  键名  开始下标  结束下标        (从左边开始读取数据)

  • 查看某个数据

命令:lindex 键名 下标

 

  • 插入多条数据

命令:lpush 键名 值1 值2 值3 ……

注意:rpush的插入多条数据的形式和lpush相同

 

  • 插入多个数据过程解析:rpush p1 1 2 3 4,从右侧将数据插入

  • 删除数据

 从后面开始删除(右边):rpop 键名

 从前面开始删除(左边):lpop 键名

删除后返回的是删除的数据

 

3、hash类型—哈希 

  • 创建hash类型

例:hset h1 a 1

(这是键值对的嵌套:h1是键名,a是h1的值,而a是1的键名,1是a的值)

 

  • 查看所有hash类型中的值

例:hgetall h1

 

  • 查看hash类型中的单个值 

例:hset h1 a

  • 查询所有的值

例:hvals h1

 注意:对于h1的内部来说,a是键,不是值

  • 查询所有的键

例:hkeys h1

 

4、set—集合 

集合的特点:无序,元素唯一,不重复。

  • 创建集合和添加数据

  • 添加数据时就会自动创建集合

命令:sadd 键名 值

  • 查看集合中的数据

命令:smembers 键名

 

  • 删除数据 

命令:spop 键名         (随即删除,返回的是删除的值)

 

  • 指定删除 

命令:srem 键名 值1 值2 ……  (可删除一个或多个,返回的结果是删除的个数)

  • 先向集合中写入几个数据

  • 指定删除数据 

 

5、zset—有序集合 

有序集合的简单理解:每位成员(member)都会有一个分数,与关联成员是唯一的,分数是可以重复的。

  • 创建有序集合和添加数据

  • 添加数据时就会自动创建有序集合

例:zadd 键名 10 zs    (10是分数,zs是成员) 

 

  • 查看数据 (查看成员)

  • 先向有序集合中写入两个数据

查看数据:zrange z1  0 10 (0是开始下标,10是结束下标)

  •  通过分值去查看成员

例:zrangebyscore z1 1 20

(1是分数的最小值,20是分数的最大值,即查找分数在[1,20]的成员)



四、redis与python交互

在python中需要下载的模块:pip install redis

2、代码演示

例:在python中实现在redis的第二个数据库,创建一个表

  • 先查看第二个数据库中的表

  •  利用python在redis中创建一个键

  •  最后在redis中查看

1、附源代码

import redis

#连接redis数据库
#写入的KV对中V为string类型,不加则写入的为字节类型,设置decod_response=True 表示写入的类型是str
pool = redis.ConnectionPool(host='127.0.0.1', port=6379, db=1, decode_response=True)
st = redis.Redis(connection_pool=pool)

# 创建一个键
st.set('python', 'So nice') # python是键名,So nice是值
print(st.get('python')) # 获取python键中的值

  • 5
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

街 三 仔

你的鼓励是我创作的最大动力~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值