• Redis内存数据库支持的各数据类型的操作整理



    string

    1、set:设置key对应的值为string类型的value。
    2、setnx:设置key对应的值为string类型的value。如果key已经存在,返回0,nx是not exist的意思。
    3、setex:设置key对应的值为string类型的value,并指定此键值对应的有效期。
    4、setrange:设置指定key的value值的子字符串。
    5、mset:一次设置多个key的值,成功返回ok表示所有的值都设置了,失败返回0表示没有任何值被设置。
    6、msetnx:一次设置多个key的值。成功返回ok表示所有的值都设置了。失败返回0表示没有任何值被设置,里面操
    7、get:获取key对应的string值,如果key不存在返回nil。
    8、getset:设置key的值,并返回key的旧值。
    9、getrange:获取指定key的value值的子字符串。
    10、mget:一次获取多个key的值,如果对应key不存在,则对应返回nil。
    11、incr:对key的值做加加操作,并返回新的值。注意incr一个不是int的value会返回错误,incr一个不存在的key,则设置key为1
    12、incrby:同incr类似,加指定值 ,key不存在时候会设置key,并认为原来的value是 0
    13、decr:对key的值做的是减减操作,decr一个不存在key,则设置key为-1
    14、decrby:同decr,减指定值。decrby完全是为了可读性,我们完全可以通过incrby一个负值来实现同样效果,反之一样。
    15、append:给指定key的字符串值追加value,返回新字符串值的长度。
    16、strlen:取指定key的value值的长度。



    hash

    1、hset:设置hash field为指定值,如果key不存在,则先创建。
    2、hsetnx:设置hash field为指定值,如果key不存在,则先创建。如果field已经存在,返回0,nx是not exist的意思。
    3、hmset:同时设置hash的多个field。
    4、hget:获取指定的hash field。
    5、hmget:获取全部指定的hash filed。
    6、hincrby:指定的hash filed 加上给定值。
    7、hexists:测试指定field是否存在。
    8、hlen:返回指定hash的field数量。
    9、hdel:返回指定hash的field数量。
    10、hkeys:返回hash的所有field。
    11、hvals:返回hash的所有value。
    12、hgetall:获取某个hash中全部的filed及value。



    list

    1、lpush:在key对应list的头部添加字符串元素
    2、rpush:在key对应list的尾部添加字符串元素
    3、linsert:在key对应list的特定位置之前或之后添加字符串元素
    4、lset:设置list中指定下标的元素值(下标从0开始)
    5、lrem:从key对应list中删除count个和value相同的元素。
    6、ltrim:保留指定key 的值范围内的数据
    7、lpop:从list的头部删除元素,并返回删除元素
    8、rpop:从list的尾部删除元素,并返回删除元素
    9、rpoplpush:从第一个list的尾部移除元素并添加到第二个list的头部,最后返回被移除的元素值,整个操作是原子的.如果第一个list是空或者不存在返回nil
    10、lindex:返回名称为key的list中index位置的元素
    11、llen:返回key对应list的长度



    set

    1、sadd:向名称为key的set中添加元素
    2、srem:删除名称为key的set中的元素member
    3、spop:随机返回并删除名称为key的set中一个元素
    4、sdiff:返回所有给定key与第一个key的差集
    5、sdiffstore:返回所有给定key与第一个key的差集,并将结果存为另一个key
    6、sinter:返回所有给定key的交集
    7、sinterstore:返回所有给定key的交集,并将结果存为另一个key
    8、sunion:返回所有给定key的并集
    9、sunionstore:返回所有给定key的并集,并将结果存为另一个key
    10、smove:从第一个key对应的set中移除member并添加到第二个对应set中
    11、scard:返回名称为key的set的元素个数
    12、sismember:测试member是否是名称为key的set的元素
    13、srandmember:随机返回名称为key的set的一个元素,但是不删除元素



    zset

    1、zadd:向名称为key的zset中添加元素member,score用于排序。如果该元素已经存在,则根据score更新该元素的顺序
    2、zrem:删除名称为key的zset中的元素member
    3、zincrby:如果在名称为key的zset中已经存在元素member,则该元素的score增加increment;否则向集合中添加该元素,其score的值为increment
    4、zrank:返回名称为key的zset中member元素的排名(按score从小到大排序)即下标
    5、zrevrank:返回名称为key的zset中member元素的排名(按score从大到小排序)即下标
    6、zrevrange:返回名称为key的zset(按score从大到小排序)中的index从start到end的所有元素
    7、zrangebyscore:返回集合中score在给定区间的元素
    8、zcount:返回集合中score在给定区间的数量
    9、zcard:返回集合中元素个数
    10、zscore:返回给定元素对应的score
    11、zremrangebyrank:删除集合中排名在给定区间的元素
    12、zremrangebyscore:删除集合中score在给定区间的元素



    引用链接:
    http://tech.it168.com/a2011/0901/1241/000001241205.shtml
    http://tech.it168.com/a2011/0913/1245/000001245822.shtml
    http://tech.it168.com/a2011/0926/1251/000001251881.shtml
    http://tech.it168.com/a2011/0929/1253/000001253573.shtml
    http://tech.it168.com/a2011/1017/1259/000001259267.shtml


  • 相关阅读:
    [POJ] 食物链
    [POJ] Palindrome
    [POJ] The Triangle
    [Cpp primer] Library vector Type
    Shift Operations on C
    Masking operations
    [CSAPP] The Unicode Standard for text coding
    [Cpp primer] Library string Type
    [Cpp primer] range for (c++11)
    [Cpp primer] Namespace using Declarations
  • 原文地址:https://www.cnblogs.com/beta2013/p/3377320.html
Copyright © 2020-2023  润新知