美文网首页
redis数据操作常用语句

redis数据操作常用语句

作者: 白练Draft | 来源:发表于2018-07-06 23:55 被阅读4次
    【String】
    添加

    set key value
    设置key的值为value
    setex key n value
    设置n秒后过期
    setnx key value
    只在key不存在时插入
    mset k1 v1 k2 v2
    msetnx k1 v1 k2 v2
    批量插入

    读取

    get key
    获取key的值
    mget k1 k2
    批量获取
    getrange key index1 index2
    获得下标index1~index2的子串

    删除

    del key

    修改

    append key xxx
    在key对应值后添加xxx
    setrange key index xxx
    从第index位为开始,将对应长度内容覆盖为xxx

    长度

    strlen key

    增减步长

    incr key
    decr key
    incrby key n
    decrby key n
    增加或减少1/n`

    【List】
    添加

    lpush list01 1 2 3 4 5 =>54321
    从左插入
    rpush list02 1 2 3 4 5 =>12345
    从右插入

    读取

    lrange key 0 -1 => 12345
    读取key全部内容
    其中0表示从下标0的项开始,-1表示到倒数第一项结束
    lpop key=> 1
    从左吐出
    rpop key=> 5
    从右吐出
    lindex key index=>3
    读取key中下标为index的值

    删除

    lrem key count v1
    删除key中count个v1
    其中count>0时从前向后删
    count<0时,从后向前删
    count=0时,删除全部v1

    修改

    ltrim key index1 index2
    截取下标index1~index2的值,并重新赋值给key
    rpoplpush list01 list02
    从list01右侧吐出一个值添加到list02的左侧
    lset key index v1
    将key中下标为index的值更改为v1
    linsert key before/after v1 v2
    在v1的前/后插入v2

    长度

    llen key
    读取列表长度

    【Set】
    添加

    sadd key 1 2 3

    读取

    smembers key=> 1 2 3
    读取key全部内容
    sismember key v1
    判断v1是否在key的值中
    存在返回1,否则返回0
    srandmember key count
    从key的值中随机出count个数
    spop key
    从key的值中随机出栈

    删除

    srem key v1
    删除key中的v1

    修改

    smove k1 k2 v1
    将k1中的v1移动到k2

    长度

    scard key
    获取key的元素个数

    其他

    差集:sdff
    交集:sinter
    并集:sunion

    【Hash】
    添加

    hset user name daisy
    添加一个key的一个field
    hsetnx user name daisy
    先判断是否存在再插入
    hmset user id 1 name daisy age 16
    对一个key的多个field

    读取

    hget user name =>daisy
    读取一个key的一个field
    hmget user id name age
    hgetall user
    读取一个key的多个field
    hexist customer email
    判断key的field是否存在
    hkeys user =>id name age
    读取key的全部field名
    hvals user=>1 daisy 16
    读取key的全部value

    删除

    hdel key field1
    删除key中的field1

    长度

    hlen key

    增减步长

    hincrby user age 2
    增加整数
    hincrby float user score 0.5
    增加小数

    【Zset】
    添加

    zadd key 60 v1 70 v2 80 v3 90 v4 100 v5
    为key添加分数和值

    读取

    zrange key 0 -1 => v1 v2 v3 v4 v5
    读取所有key的值
    zrange key 0 -1 withscores => v1 60 v2 70 v3 80 v4 90 v5 100
    读取值以及对应的分数
    zrevrange key 0 -1 => v5 v4 v3 v2 v1
    逆序读取所以key的值
    zrangebyscore key score1 score2
    读取分数为score1~score2之间的值
    当写作 score则包括score
    当写作 (score 则排除score
    可以后接limit 数字,表示限制单次读取数量
    zrank key v1 => 0
    读取v1的下标值
    zscore key v1 => 60
    读取v1的分数
    zrevrank key v1 => 4
    逆序获得下标值

    删除

    zrem key v1
    删除key中的v1

    长度

    zcard key
    统计key中值的数量
    zcount key score1 score2
    统计key中score1~score2的数量

    相关文章

      网友评论

          本文标题:redis数据操作常用语句

          本文链接:https://www.haomeiwen.com/subject/sljiuftx.html