redis数据操作

redis数据操作

数据结构

  • rediskey-value 的数据结构,每条数据都是一个键值对,键的类型是字符串(键不可以重复)
  • 值的类型有5种:字符串(string)、哈希(hash)、列表(list)、集合(set)、有序集合(zset)

string类型

  • 它在Redis 中是以二进制存储的,所以该类型可以接受任何格式的数据
  • 字符串类型中,value 最多可以容纳的数据长度为512M
数据存入
  • 设置键值:set key value
  • 设置键值及其过期时间:setex key seconds value (seconds 表示过期秒数)
  • 设置多个键值:mset key1 value1 key2 value2
  • 追加值:append key value
数据获取
  • 获取单个键的数据:get key
  • 获取多个键的数据:mget key1 key2...

键命令

  • 键命令是对所有类型的数据均可以操作
  • 查找键:keys xxx (参数支持正则)
  • 判断键是否存在:exists key (存在就返回1,反之返回0)
  • 查看键对应value的类型:type key
  • 删除键及其对应的值:del key1 key2...
  • 设置过期时间:expire key seconds
  • 查看键有效时间:ttl key

hash类型

数据的增加修改
  • 设置单个属性:hset key field value (键 属性 值)
  • 设置多个属性:hmset key field1 value1 field2 value2
数据的获取
  • 获取指定键所有的属性:hkeys key
  • 获取一个属性的值:hget key field
  • 获取多个属性的值:hmget key field1 feild2
  • 获取所有属性的值:hvals key
数据的删除
  • 删除整个hash 键及值,需用del
  • 删除属性及其对应值:hdel key field1 field2

list类型

  • 列表的元素类型为string,会按照插入顺序排序
数据增加
  • 在左侧插入数据:lpush key value1 value2
    • 例:从键为a1的列表左侧加入数据a,b,c
      • lpush a1 a b c
  • 在右侧插入数据:rpush key value1 value2
  • 在指定元素前或后插入新元素:linsert key before或after 现有元素 新元素
数据的获取
  • lrange key start stop
  • 返回列表⾥指定范围内的元素
    • start、stop为元素的下标索引
    • 索引从左侧开始,第⼀个元素为0
    • 索引可以是负数,表示从尾部开始计数,如-1表示最后⼀个元素
数据修改
  • 设定指定索引位置的元素值:lset key index value
数据删除
  • 删除指定元素:lrem key count value
    • 将列表中前count次出现的值为value的元素移除
    • count > 0: 从头往尾移除
    • count < 0: 从尾往头移除
    • count = 0: 移除所有

set类型

  • 无序集合,元素为string 类型,元素具有唯一性,不重复
数据增加
  • 添加元素:sadd key member1 member2
数据获取
  • smembers key (无序,不重复)
删除
  • srem key member1..

zset类型

  • 有序,元素为string类型,唯一不重复
  • 每个元素都会关联一个double 类型的score ,表示权重,通过权重将元素从小到大排序
数据添加
  • zadd key score1 member1 score2 member2 ...
数据获取
  • zrange key start stop
  • 返回score值在minmax之间的成员:zrangebyscore key min max
  • 返回成员memberscore 值:zscore key member
数据删除
  • 删除指定元素:zrem key member1 member2...
  • 删除权重在指定范围的元素:zremrangebyscore key min mxa

Redis与PYthon交互

  • 安装redis的包

  • 导入模块,这个模块中提供了StrictRedis对象(Strict严格),⽤于连接redis服务器,并按照不同类型提供 了不同⽅法,进⾏交互操作

    sr = StrictRedis(host='localhost', port=6379, db=0)
    # ip端口不写的话就是默认的
    sr = StrictRedis()
    
  • 其方法就是每个类型的数据操作的方法

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值