增 | 删 | 改 | 查 |
---|---|---|---|
共有16个库,默认进入0号库 | flushdb清空当前库 flushall清空所有库 | select db_index切换库 | dbsize查看当前库key的数量 |
增 | 删 | 改 | 查 | |
---|---|---|---|---|
伴随value一起增加 | del key同步删除kv unlink key 非阻塞删除kv | keys * 查看所有key exists key 判断key是否存在 type key 查看key对应value类型 ttl key查看key过期时间,-1表示永不过期(默认),-2表示已过期不存在 expire key ttl_time设置过期时间 |
增 | set k v 添加kv,默认不过期 setex k ttl v 添加kv同时设置过期时间 setnx k v key不存在时才能设置 mset k1 v1 k2 v2…同时设置多个值 msetnx k1 v1 k2 v2 key都不存在才能设置成功 |
---|---|
删 | del k |
改 | append k v追加 getset k v查找时同时设置新值 incr/decr k 将k对应v加1 inrby/decrby k step 按步长增减 setrange k index v 将k从位置index处起设置为v |
查 | get k查看v getset k v查找时同时设置新值 mget k1 k2… strlen k 获取v长度 getrange k [start end] 获取v部分内容,起始索引为0 |
实现方式 | SDS(Simple Dynamic String),可修改,动态扩容,小于1M时扩容加倍,超过1M每次扩容1M,整个长度最大512M |
增 | lpush k v1 v2… 插入头部 rpush k v1 v2… 插入尾部 |
---|---|
删 | del k lpop k 弹出头部 rpop k 弹出尾部 lrem k n v 删除n个v,从左到右 |
改 | linsert k before v newv 在v前面插入newv lset k index v 设置index处为v |
查 | lrange k start end 从左到右取数 lrange 0 -1查看所有元素 lindex key index 通过索引获取元素 llen key 获取列表长度 |
互操作 | rpoplpush k1 k2 取k1尾部插入k2头部 |
实现方式 | 双向链表ziplist |
增 | sadd k v1 v2 |
---|---|
删 | srem k v1 v2 删除 spop k 随机取一个,并删除这个元素 |
改 | linsert k before v newv 在v前面插入newv lset k index v 设置index处为v |
查 | smembers k 查看 sismember k v 判断 scard k 返回元素个数 srandmember k n 随机取n个元素但不删除 |
互操作 | smove k1 k2 v 把v从k1移入k2 sinter k1 k2 交集 sunion k1 k2 并集 sdiff k1 k2 差集 |
实现方式 | HashSet |
增 | hset k field value为key增加field属性及对应值 hmset k f1 v1 f2 v2增加多个属性及值 hsetnx k field value属性不存在时添加 |
---|---|
删 | |
改 | hincrby k field increment对field对应值增减 |
查 | hget k field获取field对应值 hexist k field判断field是否存在 hkeys k 查看所有field hvals k 查看所有field的value |
实现方式 | ziplist hashtable |
增 | zadd key score1 value1 score2 value2…创建zset |
---|---|
删 | zrem key value删除集合中的value |
改 | zincrby key increment value将value的score增加increment |
查 | zrange key start end [withscores]查看value及score, zrange key 0 -1 查看所有元素 zrangebyscore key min max [withscores]查看socre在min max范围内数据,根据score从小到大 zrevrangebyscore key min max [withscores]查看socre在min max范围内数据,根据score从大到小 zcount key min max统计scrore在[min, max]范围内元素个数 zrank key value查看元素排名 |
实现方式 | 跳表+Hash |
增 | setbit key index 1 设置为1 |
---|---|
删 | |
改 | setbit key index 0 设置为0 |
查 | getbit key index获取 bitcount key start end计数 |
互操作 | bitop and/or/not/xor newkey key1 key2 |
实现方式 | bitmap |
增 | pfadd key value1 value2… |
---|---|
删 | |
改 | |
查 | pfcount key统计基数 |
互操作 | pfmerge newkey key1 key2…HLL合并 |
实现方式 | HyperLoglog |
增 | geoadd key longitude latitude member… |
---|---|
删 | |
改 | |
查 | geopos key member查询经纬度 geodis key member1 member2 m|km 查询距离 georadius key longitude latitude radius m|km查询某点为中心半径范围内元素 |
互操作 |