【Redis教程】数据类型02

目录

2.1string

2.1.1简介

2.1.2增删改查

2.2hash

2.2.1hash简介

2.2.2增删改查

2.3list

2.3.1list简介

2.3.2增删改查

2.4set

2.4.1set简介

2.4.2增删改查

2.5sorted set

2.5.1sorted set简介

2.5.2增删改查


2.1string

2.1.1简介

  • 字符串在redis中二进制安全存储,这便意味着该类型可以接受任何类型的数据,eg:jpeg,其中字符串类型的value最多可以容纳数据长度512M。
  • 如果设置的键不存在就添加,如果存在就修改
  • 应用于计数,uuid-username,缓存等

2.1.2增删改查

  • set
    set name gfb ex 3  设置过期时间为3s,单位为秒
    set name gfb px 100  设置过期时间为毫秒
    set name gfb nx  不存在就创建,存在就报nil--setnx
    set name gfb xx   存在则覆盖,不存在就是nil----setxx

     

  • get:get name  获取name的值
  • 批量设置:mset gfb 123 cjh 456 fmh 789
  • 批量获取:mget gfb fmh
  • 设置新值取旧值:getset gfb 321
  • 增加和减少
    set count 1
    incr count  加1
    decr count 减1
    incrby key 5  指定值增加5
    decrby key 5  指定值减少

     

  • 切片:getrange key start end
  • 字符串长度:strlen key

2.2hash

2.2.1hash简介

  • 类似于字典或者对象,可以绑定一些关联性较强的数据
    eg:user:{name,password,addr,phone}

     

2.2.2增删改查

  • hset  key  field value----设置值
    hset user name gfb
    hset user password 123
    hset user addr beijin

     

  • hget key field---获取指定的field值
    hget user name

     

  • 设置多个值:hmset key field1 value1 field2 value2
  • 获取多个值:hmget key field1 field2
  • 获取所有值:hgetall key(dict.items())
  • 获取所有键:hkeys key
  • 获取所有值:hvals key
  • 删除指定值:hdel key field  根据field删除value
  • 获取个数:hlen key
  • 判断是否存在:hexists key field

2.3list

2.3.1list简介

  • 有栈的特点:先进后出
  • 有列表的特点:支持下标

2.3.2增删改查

添加

  • 直接添加:lpush key val1 val2 val3
  • 有key才会添加:lpushx key val1
  • 列表中插入:linsert key before val new_val
  • 按位置插入:lset key 0 val

获取

  • lrange key start end:获取列表内容
    lrange fruit 0 -1 获取fruit所有的元素

     

  • llen key:获取列表长度
    llen fruit

     

  • lindex key index:根据下标获取对应的元素
    lindex fruit 3

     

删除

  • lrem key count elem:删除指定列表的指定元素,其中count表示删除的相同的个数
    lrem fruit 3 pig

     

  • lpop key :删除最上面的元素,并且返回删除的元素
    lpop fruit

     

2.4set

2.4.1set简介

  • 类似于python中的set,无序

2.4.2增删改查

  • 添加元素:sadd city beijin shanghai shenzheng
  • 随机删除元素:spop num1
  • 指定元素删除:srem key member
  • 随机选取元素:srandmember city
  • 查看元素内容:smembers city
  • 交集:sinter set1 set2
  • 并集:sunion set1 set2
  • 差集:sdiff num1 num2
  • 获取元素长度:scard city
  • 移动元素:smove source_key  target_key  member
  • 判断值value是不是key的成员:sismember key value

2.5sorted set

2.5.1sorted set简介

  • 有序集合是在集合的基础上为每个元素进行排序,元素排序需要根据另外一个值进行比较,所以对于有序集合,每个元素有两个值。即:值和分数,分数专门用来排序。
  • 适用于视频网站对用户上传视频排行榜和点赞数

2.5.2增删改查

  • 添加元素:zadd key [nx|xx] score1 member1 score2 member2(nx:不存在则创建;xx:存在则修改)
  • 原基础上增加:zadd key  incr 2 age
  • 删除指定元素:zrem key member  
  • 删除指定范围元素:zremrangebyscore key min max
  • 指定范围取值:zrange(zrevrange) key start end withscores
  • 根据score的范围取值:zrangebyscore key min max [withscores] [limit offset count]
  • 交集:zinterstore
  • 并集:zunionstore
  • 获取有序集合长度:zcard key
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值