它能存储任何形式的字符串,包括二进制数据,序列化后的数据,JSON化的对象甚至是一张图片。最大521M。
set key value:将字符串值value设置到key中会覆盖原来的值 incr key:将key中存储的数字值加1,如果key不存在,则key的值先被初始化为0在执行incr操作(只能对数字类型的数据操作) decr key:将key中存储的数字值减1,如果key不存在,则key的值先被初始化为0在执行incr操作(只能对数字类型的数据操作) append key value:如果key存在,则将value追加到key原来旧值的末尾,如果key不存在,则将key设置值为value,返回总长度 strlen key:返回key所存储的字符串值的长度,如果key存在,返回值长度;key不存在,返回0 getrange key start end:获取key中字符串值从start开始到end结束的子字符串,包括start和end,负数表示从字符串的末尾开,-1表示最后一个字符 从左往右:从0开始;从右往左:从-1开始 返回值:截取的子字符串 setrange key offset value:用value覆盖(替换)key的存储的值从offset开始,不存在的key做空白字符串,返回修改后的的字符串的长度 mset key value [key value...]:同时设置一个或多个key-value对 mget key[key...]:获取所有(一个或多个)给定key的值 返回值:包括所有的key的列表
是一个string类型的field和value的映射表,hash特别适合用于存储对象。
hset hash表的key field value:将哈希表key中的域field的值设为value,如果key不存在,则新建hash表,进行赋值,如果有field,则覆盖值 如果field是hash表中infield,且设置成功,返回1 如果field已经存在,旧值覆盖新值,返回0 hget key foeld:获取哈希表key中给定域field的值 返回field域的值,如果key不存在或者field不存在返回nil hmset key field value [field value...]:同时将多个field-value(域-值)设置到哈希表key中,此命令会覆盖已经存在的field,hash表key不存在,会创建空的hash表,执行hmset 设置成功返回ok,如果失败返回一个错误 hmget key field [field...]:获取哈希表key中一个或多个给定域的值 以列表形式返回hash中域和域的值,key不存在,返回空hash hgetall key:获取哈希表key中所有的域和值 hdel key field [field...]:删除哈希表key中的一个或多个指定域field,不存在field直接忽略 成功删除的field的数量 hkeys key:查看哈希表key中的所有field域 包含所有field的列表,key不存在返回空列表 hvals key:返回哈希表中所有域的值 包含哈希表所有域值的列表,key不存在返回空列表 hexists key field:查看哈希表key中,给定域field是否存在 如果field存在,返回1,其他返回0
简单的字符串列表,按照插入顺序排序。你可以添加一个元素到列表的头部(左边)或者尾部(右边)。
lpush key value [value...]:将一个或多个值value插入到列表key的表头(最左边),从左边开始加入值,从左到右的顺序依次插入到表头 返回值:数字,新列表的长度 rpush key value [value...]:将一个或多个值value插入到列表key的表尾(最右边),各个value值按从左到右的顺序依次插入到表尾 返回值:数字,新列表的长度 lrange key start stop:获取列表key中指定区间内的元素,0表示列表的第一个元素,以1表示列表的第二个元素;start,stop是列表的下标值,也可以是负数的下标,-1表示列表的最后一个元素,-2表示列表的倒数第二个元素,以此类推。start,stop超出列表的范围不会出现错误 返回值:指定区间的列表 lindex key index:获取列表key中下标为指定index的元素,列表元素不删除,只是查询。0表示表的第一个元素,以1表示列表的第二个元素;start,stop是列表的下标值,也可以为负数的下标,-1表示列表的最后一个元素,-2表示列表的倒数第二个元素,以此类推 返回值:指定下标的元素;index不再列表范围内,返回nil llen key:获取列表key的长度 返回值:数值,列表的长度;key不存在返回0 lrem key count value:根据参数count的值,移除列表中与参数value相等的元素,count>0,从列表的左侧向右开始移除count个元素;count<0从列表的尾部开始移除count个元素;count=0移除表中所有与value相等的值 返回值:数值,移除的元素个数 lset key index value:将列表key下标为index的元素的值设置为value 返回值:设置成功,返回ok;key不存在或者index超出范围返回错误信息 linsert key BEFORE|ALFTER pivot value:将值value插入到列表key当中位于值pivot之前(BEFORE)或之后(ALFTER)的位置。key不存在,pivot不在列表中,不执行任何操作 返回值:命令执行成功,返回新列表的长度。没有找到pivot返回-1,key不存在返回0
string类型的无序集合,集合成员是唯一的,即集合中不能出现重复的数据。
sadd key member[member...]:将一个或多个member元素加入到集合key当中,已经存在于集合的member元素将被忽略,不会再加入 返回值:加入到集合的新元素的个数。不包括被忽略的元素 smembers key:获取集合key中的所有成员元素,不存在的key视为空集合 sismember key member:判断member元素是否是集合key的成员 返回值:有,返回1;其他返回0 scard key:获取集合里面的元素个数 返回值:数字,key的元素个数。其他情况返回0 srem key member [menber...]:删除集合key中的一个或多个memeber元素,不存在的元素被忽略 返回值:数字,成功删除的元素个数,不包括被忽略的元素 srandmember key [count]:只提供key,随机返回集合中一个元素,元素不删除,依然在集合中;提供了count时,count为正数,返回包含count个数元素的集合,集合元素各不相同。count是负数,返回一个count绝对值的长度的集合,集合中元素可能会重复多次 返回值:一个元素;多个元素 spop key [count]:随机从集合中删除一个元素,count是删除的元素个数 返回值:被删除的元素,key不存在或空集合返回nil
和set一样也是string类型元素的集合,且不允许重复的成员。不同的是zset的每个元素都会关联一个分数(分数可以重复),redis通过分数来为集合中的成员进行从小到大的排序。
zadd key score member [score member...]:将一个或多个member元素及其score值加入到有序集合key中,如果member存在于集合中,则更新值,score可以是整数或浮点数 返回值:数字,新添加的元素个数 zrange key start stop [WITHSCORES]:查询有序集合,指定区间之内的元素。集合成员按score值从小到大来排序。start,stop都是从0开始。0是第一个元素,1是第二个元素,依次类推。以-1表示最后一个成员,-2表示倒数第二个成员。WITHSCORES选项让score和value一同返回 返回值:自定义区间的成员集合 zrevrange key start stop [WITHSCORES]:返回有序集合key中,指定区间内的成员。其中成员的位置按score值递减(从大到小) 返回值:自定义区间的成员集合 zrem key member [member...]:删除有序集合key中的一个或多个成员,不存在的成员被忽略 返回值:被成功删除的成员数量,不包括被忽略的成员。 zcard key:获取有序集合key的元素成员的个数 返回值:key存在返回集合元素的个数,key不存在,返回0 zrangebyscore key min max [WITHSCORES] [LIMIT offset count]:获取有序集合key中,所有score值介于min和max之间(包括min和max)的成员,有序集合是按递增(从小到大)排序 min,max是包括在内,使用符号(表示不包括。min,max可以使用-inf,+inf表示最大和最小 limit用来限制返回结果的数量和区间。 withscores显示score和value 返回值:指定区间的集合数据 zrevrangebyscore max min [WITHSCORES] [LIMIT offset count]:返回有序集合key中,score值介于max 和min之间(默认包括等于max或min)的所有的成员。有序集合按score值递减(从小到大)的次序排列。其他同zrangebyscore zcount key min max:返回有序集合key中,score值在min和max之间(默认包括score值等于min或max)的成员的数量