1、redis的常用命令
Hash相关的命令
hset key field value:将哈希表key的字段field的值设为value
hget key field:取哈希表key的字段field的值
hlen key : 获取哈希表key中字段的个数
hdel key field : 删除哈希表key的字段field
hincrby key field increment : 将哈希表中字段的值加上增量,此处值必须为整数,增量也必须为整数
hgetall key: 获取哈希表key中所有的字段和属性值
hexists key field : 查看字段是否存在,存在为1.不存在为0
hkeys key : 获取key中所有的字段
hvals key : 取出当前key中所有字段的属性值
hmset key field1 value1[field2 value2] : 同时将多对键值对设置到表key中
hsetxn key field value : 在field不存在时设置value
hmget key field1 field2 [field3] : 获取key中多个字段的值
hincrbyfloat key field increment : 将key中字段的浮点数值加上增量
List相关的命令
lpush key value1 [value2] :表示的是将一个或者多个值 插入到列表的表头
lpop key : 移除并返回这个列表的第一个元素
rpush key value1 [value2] : 将一个或者多个值 插入到列表的表尾
rpop key : 移除并返回这个列表的最后一个元素
lrange key start end : 获取列表指定范围内的元素
lpushx key value:将一个或多个值插入表头,列表必须存在
rpushx key value:将一个或多个值插入表尾,列表必须存在
llen key : 获取列表的长度
lindex key index : 通过索引获取列表的值
linsert key before|after pivot value : 在表中指定元素的前后插入数值value,如果命令执行成功,返回成功之后列表的长度,如果没有找到指定元素,返回-1,如果key不存在,返回0
lrem key count value : 移除列表中count数量的与value值相同的元素,如果count>0,从表头到表尾移除count数量的value值,如果count<0,从表尾到表头移除count数量的value值,如果count=0,移除所有与value相等的元素
lset key index value : 指定在索引处设置value值,索引不能超过范围
ltrim key start end : 删除指定范围之外的元素,范围里面的元素会被保留
blpop key timeout : 弹出表头的第一个元素,如果列表为空会阻塞列表直到等待超时或发现可弹出元素为止
brpop key timeout : 弹出表尾的第一个元素,如果列表为空会阻塞列表直到等待超时或发现可弹出元素为止
rpoplpush key destkey : 将key中最后一个元素取出并删除,添加到destkey列表的第一个元素位置
Set相关的命令
sadd key value1 [value2]:在key对应的集合中添加多个value值,如果key不存在,就会创建
srem key value1 [value2] : 删除该集合中value值,并返回移除值的数量
sismember key value : 检查key中value值是否存在,存在返回1,不存在返回0
scard key : 返回key的长度
smembers key : 获取集合中所有的数据
srandmember key count : 从集合中选出count个元素,count>0,返回不重复的随机数,count<0,返回的数可能会重复
spop key : 随机从集合中选出某个元素并移除,返回移除的数
spop key count :随机从集合中选中count个元素并删除,返回移除的数
smove source-key target-key value: 将source-key中的value移除并插入到target-key中,转移成功返回1.不成功返回0
sinter key1 key2… :做交集运算
sinterstore dest-key key1 key2 : 将key1和key2的交集放入dest-key中去,如果dest-key存在会把dest-key覆盖,如果dest-key不存在会创建一个dest-key
sunion key1 key2… :并集运算
sunionstore dest-key key1 key2 : 同上,将并集存入dest-key中
sdiff key1 key2:差集运算 :以第一个key为准,获取差集
sdiffstore dest-key xbb user : 同上,将差集的结果存入dest-key中
Sorted Set相关的命令
zadd key score1 member1 score2 member2… : 向有序集合中添加一个或多个元素,如果该元素存在,分值会替换,返回的是新添加的元素的个数
zscore key member : 获取指定成员的分值
zcard key : 返回指定集合中成员个数
zrem key member1 member2… : 移除集合中指定的成员
zcount key min max : 计算在集合中分数在指定区间的成员个数
zrank key member : 返回有序集合中成员的索引
zincrby key increment member : 集合中指定成员的分数加上增量
zrange key start end [withscores] : 获取集合索引在指定区间的成员,withscores表示返回分数
zrevrank key member : 返回集合中指定成员的分数排名
zrevrange key start end [withscores] : 按分数从大到小的顺序返回指定索引区间的成员
zremrangebyrank key start end : 按照排名范围从小到大删除元素
zremrangebyscore key start end : 按照分数范围删除元素
zrangbyscore key min max [withscores] [limit offset count] : 返回分数在指定区间的成员。offset 表示从offset索引开始,count表示返回的数量
zlexcount key min max : 计算在指定字典区间的成员个数,当集合中分数值都相同时,会按照成员的字典顺序来排序,-和+ 在min 和 max 中有特殊的意义,分别代表负无限和正无限,因此向一个所有成员分数值相同的集合发送该命令就是返回所有集合中的元素