字符串
- flushall 清空一个redis 实例中所有数据库的数据
- exists key 判断健是否存在
- incr key 递增1
- incrby key 2 递增指定参数数值
- decr key 递减1
- decrby key 2 递减指定参数数值
- incrbyfloat key 2.7 递增指定双精度浮点数
- append key value 向尾部追加 set key hello ; append key " world!"
- strlen key 获取字符串长度
散列(哈希)
- mget key [key …] 同时获得多个键值
- mset key value [key value …] 同时设置多个键值
- getbit key offset 获得一个字符串类型指定位置的二进制位的值(0或1)
- setbit key offset value 设置字符串类型键指定位置的二进制位的值
- bitcount key [start] [end] 获得字符串类型键中值是1的二进制位个数,如只希望统计前2个字节:bitcount key 0 1
- bitop operation destkey key [key …] 对多个字符串类型键进行位运算,结果存在destkey指定的键中,运算操作包括:and、or、xor、not
- bitpos key value [start] [end] 获得指定键的第一个位值是0或1的位置
bitpos foo 1 1 2 返回9, 返回结果的偏移量是从头开始
- hset key field value 设置散列类型
- hget key field
- hmset key field value [field value …]
- hmget key field [field …]
- hgetall key 返回的结果是字段和字段值组成的列表
- hexists key field 判断一个字段是否存在
- hsetnx key field value 当字段不存在时赋值,存在不操作,hsetnx中的“nx”表示“ if Not eXists”
- hincrby key field increment 增加数字
- hdel key field [field …] 删除字段
- hkeys key 只获取字段名
- hvals key 只获取字段值
- hlen key 获取字段数量
列表
- lpush key value [value …] 列表左边增加元素,返回增加元素后的列表长度
- rpush key value [value …] 列表右边增加元素,返回增加元素后的列表长度
- lpop key 从列表左边弹出元素,并返回被移除的元素
- rpop key 从列表右边弹出元素,并返回被移除的元素
- llen key 列表中元素的个数 当键不存在返回0
- lrange key start end 获取列表片段 ,支持负索引,表示从右边开始计算序数,-1 表示最右边第一个。lrange key 0 -1 可以获取列表中的所有元素。如果start 大雨stop 返回空列表,如果stop大于实际索引范围,返回到列表最右边的元素。
- lrem key count value 删除列表中前count个值为value的元素,返回实际删除的元素个数,count =0,删除所有值为value的元素。count >0 , 从左边开始删除前count个值为value的元素,count<0 ,从右边开始删除前 |count| 个值为value的元素。
- lindex key index 获得指定索引的元素值
- lset key index value 设置指定索引的元素值
- ltrim key start end 只保留列表指定片段,范围外的元素清除
- linsert key before|after pivot value 向列表中插入元素,从左到有查找值为pivot的元素,根据是before还是after来决定插入的元素先后位置。
- rpoplpush source destination 将元素从一个列表转到另一个列表,从source右边弹出元素,加到destination的左边
集合
- sadd key member [member …] 增加集合的元素,集合不能有相同的元素,本命了返回成功加入的元素数量
- srem key member [member …] 删除
- smembers key 获得集合中的所有元素
- sismember key number 判断元素是否存在集合中 1:是 0:否
- sdiff key [lkey …] ,差集,假设 seta 与setb的差集表示A-B,代表属于A不属于B, 多个计算顺序是先计算seta -setb的结果进行与setc 的差集
- sinter key [key …] ,交集,
- sunion key [key …],并集,
- scard key 获取集合中元素个数
- sdiffstore/sinterstore/sunionstore destination key [key …] 进行集合运算并将结果存储到destination
- srandmember key [count] 随机获得集合中的元素
- spop key 从集合中弹出一个元素
有序集合
- zadd key score member [score member …] 增加元素 score代表分数,+inf 代表正无穷 -inf 负无穷
- zscore key number 获得元素的分数
- zrange key start stop [withscores] 按照元素从小到大的顺序返回元素member ,加上withsocres参数,会多返回分数信息,格式:元素1,分数1,元素2,分数2 …
- zrevrange key start stop [withscores] 从大到小,其他同上
- zrangebyscore key min max [withscores] [limit offset count] 获得指定分数范围的元素,可以在分数前加上“(”,如zrangebyscore score 80 (100 表示分数80到100分但不包含100分,也支持无穷数+inf -inf。另外,想要获得分数高于60分的从第二个人开始的3个人:zrangebyscore score 60 +inf limit 1 3。
- zrevrangebyscore key max min [withsocres] [limit offset count],从大到小依据分数范围获得元素
- zincrby key increment member 增加某个元素的分数,返回值是更改后的分数,increment可以是负数
- zcard key 获得集合中元素的数量
- zcount key min max 获得指定分数范围内的元素个数
- zrem key member [member …] 删除一个或多个元素,返回值是成功删除的元素个数
- zremrangebyranke key start stop 按照元素分数从小到大的顺序(索引0 表示最小的值)删除在指定排名范围内的所有元素,返回删除的元素个数
- zremrangebyscore key min max 删除指定分数范围内的所有元素,min max特性和zrangebyscore 一样,返回删除的元素数量
- zrank key member 按照分数从小到大排序,获得元素的排名,从0开始
- zrevrank key member 按照分数从大到小,获得元素的排名
- zinterstore/zunionstore destination numkeys key [key …] [WEIGHTS weght [weight …]] [AGGREGATE SUM|MIN|MAX] 计算有序集合的交集/并集,返回值为destination的元素个数,aggregate 是sum(默认值),destination的元素是每个参与计算的集合中该元素分数的和,max 最高值,min最小值。WEIGHTS参数设置每个集合的权重,每个集合在参与计算元素的分数会被乘上该集合的权重