Redis中的常用指令
-
库的相关操作
操作 说明 select dbindex 切换库(库的下标0-15) flushDB 清空当前操作的库 flushAll 清空所有的库 -
key相关操作
操作 说明 del key … 删除一个或者多个key 空格隔开 keys * 查询所有key exists key 查看当前key是否存在 expire
key 20key过期时间20秒 move key dbindex 将某一个key移动到指定库中 ttl key
用户获取key的剩余存活时间
通常和expire key time 一起使用
key = -1 永不过期 key=-2 不存在randomkey 随机返回一个key rename oldkey keynewname 给已存在的key修改名字 type key
判断一个key所对应的值类型 -
redis常用数据类型
-
String 类型操作
操作 说明 set 设置一个key的value
get 取出指定key对应的value
mset 一次设置多个key value mget 一个获取多个key的value strlen 获取对应key的value的存储长度 append 未对应的key的value追加内容 setex 设置一个key的存活时间 / 添加新的key的同时设置过期时间
setnx 存在不做任何操作,不存在则添加
decrby 根据提供的数据进行减法操作 incr 根据提示的数据进行 +1
操作 (数值类型)decr 根据提示的数据进行 -1
操作incrby 根据提供的类型进行加法操作+x +10 +100 都行 incrbyfloat 根据提供的数据加入浮点数 -
list 类型操作
操作 说明 lpush 将某个值加入到一个key列表的头部 出栈顺序 先进后出
rpush 将某个值加入到一个key列表的元素 出栈顺序 先进先出
lrange start stop 获取某一个区间的元素 lpop 返回和移除列表的第一个元素 ropo 返回和移除列表的最后一个元素 llen 获取集合元素个数 lrem 删除重复元素
lpush 新添加的元素(头插) 也就是左边
rpush 原先添加的元素(尾插) 还是左边
从左到右删除lset 设置某一个指定索引的值(索引必须存在)相当于修改 lindex 删除指定下标的元素并返回 ltrim 截断保留列表中特定区间内的元素 linsert 在某一个元素前或者后插入数据 -
set 无下标 无序 不重复
操作 说明 sadd 为集合添加元素 smembers 显示集合中所有元素 无序 scard 返回集合中元素的个数 spop 随机返回一个元素并将元素在集合中删除 srem 从集合中删除指定元素 sismembers 判断这个集合中是否含有这个元素 srandmember 随机返回元素【count】 sdiff 去掉第一个集合中 和其他集合重复的元素 并返回去重后的第一个集合元素 【不会对原数据产生影响】 sinter 求交集 sunion 求合集 -
zset 类型操作
相当于Java中的treeSet,元素不可重复,但每个元素都存在分数,可以通过分数排序。
操作 说明 zadd 添加一个有序集合元素 zcard 返回集合个数 zrange 返回一个范围内的元素 [withscores] zrangebyscore zrangebyscore key scoreStart scoreEnd limit start records
区间分数中 进行limit 偏移筛选
start 开始下标 records记录数zrank 通过key 返回分数排名 zrevrank 返回倒叙排名 zscore 通过key返回分数值 zrem 移除某一个元素 zincrby
给某个特定元素加分 -
hash 类型操作
操作 说明 hset 设置一个 key/value对 hget 获得一个key对应的value hgetall key 获取key中所有的键值对 hdel key field field 通过map 中的 key 删除value hkeys 获得所有的key hvals 获取所有的value hsetnx 设置一个不存在的key值(不存在添加,存在则不作操作) hincrby 为value作加法运算 hincribyfloat 为value进行浮点运算