zoukankan      html  css  js  c++  java
  • Redis数据类型及基本命令

     

    一、基础命令

    提示:Redis不区分命令大小写
    1.获得符合规则的键名列表
    keys pattern    //pattern支持glob风格通配符格式
    2.判断一个键是否存在
    exists key    //如果键存在则返回整数类型1,否则返回0
    3.删除键
    del key [key …]    //可以删除一个或多个键,返回值是删除的键的个数。
    注意:DEL 命令的参数不支持通配符,但可以执行redis-cli DEL 'redis-cli KEYS "user:*"'来达到效果
    4.获得键值的数据类型
    type key

    二、数据类型

    五种数据类型:string(字符串类型)、hash(散列类型)、list(列表类型)、set(集合类型)、zset(有序集合类型);另外,包括 2.8.9 版本添加了 HyperLogLog 结构;

    1.字符串类型

    //赋值与取值
    set key value
    get key
    //递增数字
    incr key
    //增加指定的整数
    incrby key increment
    //减少指定的整数
    decr key
    decrby key decrement
    //增加指定浮点数
    incrbyfloat key increment
    //向尾部追加值
    append key value
    //获取字符串长度
    strlen key
    //同时获得/设置多个键值
    mget key [key …]
    mset key value [key value …]
    //位操作
    getbit key offset
    setbit key offset value
    //获得字符串类型键中值是1的二进制位个数
    bitcount key [start] [end]        
    //位运算
    bitop operation{OR | AND | XOR | NOT} destkey key [key …]

    2.散列类型(hash)

    //赋值与取值
    hset key field value
    hget key field
    hmset key field value [field value …]
    hmget key field [field …]
    hgetall key
    hexists key field
    hincrby key field increment
    hdel key field [field …]
    hkeys key
    hvals key
    hlen key

    3.列表类型

    lpush key value [value …]    //增加
    rpush key value [value …]
    lpop key        //弹出
    rpop key
    llen key
    lrange key start stop
    lrem key count{>0 | =0 |  <0} value
    //获得/设置指定索引的元素值
    lindex key index    
    lset key index value
    //只保留列表指定片段
    ltrim key start end    
    linsert key BEFORE|AFTER pivot value
    //将元素从一个列表转到另一个列表
    rpoplpush source destination        

    4.集合类型

    sadd key member [member …]
    srem key member [member …]
    smembers key
    sismember key member
    //集合间运算
    sdiff key [key …]    A - B
    sinter key [key …]    交集
    sunion key [key …]    并集
    //获得集合中的元素个数
    scard key        
    //进行集合运算并将结果存储
    sdiffstore destination key [key …]
    sinterstore destination key [key …]
    sunionstore destination key [key …]
    //随机获得集合中的元素
    srandmember key [count]    
    //从集合中弹出一个元素
    spop key        

    5.有序集合类型

    zadd key score member [score member …]
    //获得元素的分数
    zscore key member        
    //获得排名在某个范围的元素列表
    zrange key start stop [WITHSCORES {连分数一起显示}]    
    zrevrange  key start stop [WITHSCORES]
    //获得指定分数范围的元素
    zrangebyscore key min max [WITHSCORES] [LIMIT offset count]    
    zincrby key increment member
    //获得集合中元素的数量
    zcard key        
    //获得指定分数范围內的元素个数
    zcount key min max    
    zrem key member [member …]
    zremrangebyrank key start stop
    zremrangebyscore key min max
    zrank key member        //获得元素的排名
    zrevrank key member    //反
    //计算有序集合的交集
    zinterstore destination numkeys key [key …] [WEIGHTS weight [weight …]]
    [AGREGATE SUM|MIN|MAX]

    6.HyperLogLog

    在 2.8.9 版本添加了 HyperLogLog 结构,用做基数统计的算法,HyperLogLog 的优点是,在输入元素的数量或者体积非常非常大时,计算基数所需的空间总是固定的、并且是很小的;

    基数?

    比如数据集 {1, 3, 5, 7, 5, 7, 8}, 那么这个数据集的基数集为 {1, 3, 5 ,7, 8}, 基数(不重复元素)为5。 基数估计就是在误差可接受的范围内,快速计算基数。

    //添加指定元素
    pfadd key element [element ...]     
    //返回基数估算值
    pfcount  key [key ...]     
    //将多个 HyperLogLog 合并为一个 HyperLogLog
    pfmerge destkey sourcekey [sourcekey ...]     

    http://www.runoob.com/redis/redis-tutorial.html

     
  • 相关阅读:
    vim删除某一列
    linux下在当前文件夹查找一个字符串信息
    .tar和.tar.gz的区别
    visual studio中调用masm汇编
    iconv转码失败的原因
    终端查看
    kubectl 常用命令总结
    Charles实战之Charles抓取https请求
    Fiddler实战之拟2G、3G、4G网络进行弱网测试
    Fiddler实战之使用Fiddler模拟弱网环境
  • 原文地址:https://www.cnblogs.com/itommy/p/10644554.html
Copyright © 2011-2022 走看看