redis中的一些操作

  • redis是key-value的数据,所以每个数据都是一个键值对,键的类型是字符串,值得类型分为5种;
    • 字符串string
    • 哈希hash
    • 列表list
    • 集合set
    • 有序集合zset
  • 数据操作的全部命令: http://redis.cn/commands.html
  • 一、String (概述:String是redis最基本的类型,最大能存储512MB的数据,String类型是二进制安全的,即可以存储任何数据、比如数字、图片、序列化对象等)
    • 1、设置
      • a、设置键值
        • set key value
        • 示例 : set name sunck set a "liujie is a good man"
      • b、设置键值及过期时间,以秒为单位
        • setex key seconds value
        • 示例 :setex c 10 good (在10s内可以看到good)
      • c、设置多个键值
        • mset key value [key value ……]
        • 示例 :mset a good b nice c hello d xxx
    • 2、获取
      • a、根据键获取值,如果键不存在则返回None(null 0 nil)
        • get key
        • 示例 :get name
      • b、根据多个键获取多个值
        • mget key [key ……]
        • 示例 :mget a b c
    • 3、运算(要求:值是字符串类型的数字)
      • a、将key对应的值加1
        • incr key
        • 示例 :incr f
      • b、将key对应的值减1
        • decr key
        • 示例 :decr f
      • c、将key对应的值加整数
        • incrby key intnum
        • 示例 :incrby f 10
      • d、将key对应的值加整数
        • decrby key intnum
        • 示例 :decrby f 10
    • 4、其它
      • a、追加值
        • append key value
        • 示例 :apped b ! (给上面键对应的值加上一个!)
      • b、获取值长度
        • strlen key
        • 示例 :strlen b (返回一个数字)
  • 二、key
    • 1、查找键,参数支持正则
      • keys pattern
      • 示例: keys * (查看所有的键)
    • 2、判断键是否存在,如果存在返回1,不存在返回0
      • exists key
      • 示例: exists a
    • 3、查看键对应的value类型
      • type key
      • 示例: type a
    • 4、删除键及对应的值 (返回1表示成功)
      • del key [key ……]
    • 5、设置过期时间,以秒为单位
      • expire key seconds
      • 示例: expire a 10 (键为a 的保存10s)
    • 6、查看有效时间,以秒为单位
      • ttl key
      • 示例: ttl a
  • 三、hash
    • 概述:hash用于存储对象
      • {
      • name:"tom",
      • age:18
      • }
    • 1、设置
      • a、设置单个值
        • hset key field value
        • 示例: hset p1 name tom
        • hset p1 age 18
      • b、设置多个值
        • hmset key field value [field value ……]
        • 示例: hmset p2 name lilei age 20
    • 2、获取
      • a、获取一个属性的值
        • hget key field
        • 示例: hget p1 name (获取p1里面的name值)
      • b、获取多个属性的值
        • hmget key filed [filed ……]
      • c、获取所有属性(key)对应的值
        • hgetall key
      • d、获取所有属性(key)
        • hkeys key
      • e、获取所有值
        • hvals key
      • f、返回包含属性的个数
        • hlen key
    • 3、其它
      • a、判断属性是否存在,存在返回1,不存在返回0
        • hexists key field
        • 示例: hexists p1 name (判断p1里面是否有name属性)
      • b、删除属性及值
        • hdel key field [field ……]
      • c、返回值的字符串长度
        • hstrlen key field
  • 四、list (概述:列表的元素类型为string,按照插入顺序排序,在列表的头部或尾部添加元素)
    • 1、设置
      • a、在头部插入 (相当与队列 )
        • lpush key value [vlaue ……]
        • 示例:lpush s1 1 (此时s1中的数据就是1 )
      • b、在尾部插入
        • rpush key value [vlaue ……]
        • 示例:rpush s1 3 (此时s1中的数据就是1 3)
      • c、在一个元素的前|后插入新元素
        • linsert key before|after pivot value (pivot 就是里面的数据)
        • 示例:linsert s1 after 1 4 (此时s1中的数据就是1 4 3)
      • d、设置指定索引的元素值
        • lset key index value
        • 示例 : lset key(s1,,没有测试过) 1 40 (把s1中的4改为40)
        • 注意:index从0开始
        • 注意:索引值可以是负数,表示偏移量是从list的尾部开始,如-1表示最后一个元素
    • 2、获取
      • a、移除并返回key对应的list的第一个元素
        • lpop key (执行后列表中就没有了)
      • b、移除并返回key对应的list的最后一个元素
        • rpop key
      • c、返回存储在key的列表中的指定范围的元素
        • lrange key start end
        • 示例: lrange s1 0 -1 ( 获取全部的数据)
        • 注意:start end都是从0开始
        • 注意:偏移量可以是负数
    • 3、其它
      • a、裁剪列表,改为原集合的一个子集 (原来的集合:1 40 3 1 )
        • ltrim key start end
        • 示例: itrim s1 0 1 (执行后的集合:1 40)
        • 注意:start end都是从0开始
        • 注意:偏移量可以是负数
      • b、返回存储在key里的list的长度
        • llen key
        • 示例: llen s1 (2)
      • c、返回列表中索引对应的值
        • lindex key indexs
        • 示例: lindex s1 1 (40)
  • 五、set (概述:无序集合,元素类型为String类型,元素具有唯一性,不重复)
    • 1、设置
      • a、添加元素
        • sadd key member [member ……]
    • 2、获取
      • a、返回key集合中所有元素
        • smembers key
      • b、返回集合元素个数
        • scard key
    • 3、其他
      • a、求多个集合的交集
        • sinter key [key ……]
        • 示例:sinter d1 d2 (求d1,d2中的相同元素)
      • b、求多个集合的差集
        • sdiff key [key ……]
      • c、求多个集合的合集
        • sunion key [key ……]
      • d、判断元素是否在集合中,存在返回1,不存在返回0
        • sismember key member
        • 示例: sismemder d1 2 (检查d1中是否含有2)
  • 六、zset
    • 概述:
      • a、有序集合,元素类型为Sting,元素具有唯一性,不能重复
      • b、每个元素都会关联一个double类型的score(表示权重),通过权重的大小排序,元素的score可以相同
    • 1、设置
      • a、添加
        • zadd key score member [score member ……]
        • zadd z1 1 a 5 b 3 c 2 d 4 e
    • 2、获取
      • a、返回指定范围的元素
        • zrange key start end
      • b、返回元素个数
        • zcard key
      • c、返回有序集合key中,score在min和max之间的元素的个数
        • zcount key min max
      • d、返回有序集合key中,成员member的score值
        • zscore key member
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值