默认key
关键字/参数 | 作用 | 示例 |
---|
【select】 [index] | 选择切换数据库 | select 3 |
【dbsize】 | 查看当前数据库大小 | desize |
【key *】 | 查看当前数据库所有的key | key * |
【flushdb】 | 清空当前数据库所有的key | flushdb |
【flushall】 | 清空整个服务器的 | flushall |
【exists】 key[key] | 查看当前key是否存在 | exists k1 k2 k3 |
【move】 key db | 移动当前key | move money 1 |
【expire】 key time | 设置key的过期时间 单位为秒 | expire name 10 |
【ttl】 key | 查看当前key的剩余生命时间(不存在 -2 存在未设置-1 返回) | ttl key |
【type】 key | 查看当前key类型 | type name |
【del】 key | 删除键 | del key |
【save】 | 保存 | save |
String字符串类型
关键字/参数 | 作用 | 示例 |
---|
【append 】key value | 相同key追加字符串,不存在就创建 | append key value |
【strlen】key | 查看对应value长度 | strlen key |
【incr】key | 自增1 value值要为数字 | incr key |
【decr】 key | 自减1 value值要为数字 | decr key |
【incrby】key increment | 设定步长增量,每次增加设定的数值 | incrby num -2 (相当于减少) |
【decrby】 key increment | 设定步长增量,每次增加设定的数值 | decrby key increment |
【getrange 】key start end | 截取字符串 | GETRANGE key 0 -1此时读取全部和get key相同 |
【setrange 】key offest value | 替换字符串 | SETRANGE key 2 tihuan |
【setex】 key seconds value | 设置添加key并设置过期时间,存在就会覆盖 同set with expire | setex money 20 kuaimeile |
【setnv key value | 原子操作 不存在就进行设置 如果存在就创建失败返回0 同 set if not exist 在分布式锁中用到cas | setnv key fugai |
【mset】 key value key2 value2… | 批量设置key | mset key key2 |
【mget】 key key2 | 批量获取对应的value | mget key key2 |
【getset】key | 如果存在就获取之前的值 不能存在就创建一个新的并赋值 | getset key |
List 列表
关键字/参数 | 作用 | 示例 |
---|
【lpush】 key element[element] | 从头部添加元素 | lpush e1 |
【rpush】 key element[element] | 从尾部添加元素 | rpush e1 |
【lpop】 key count | 移除指定数量的元素 count指定数量 | lpop key 4 |
【rpop】 key count | 移除指定数量的元素 count指定数量 | lpop key 4 |
【lset】 key index element | 将列表中指定下标的值替换为另外一个值,更新操作 | |
【lrange】 key star stop | 获取list指定区间的值 | lrange 0 -1 (显示全部) |
【lindex】 key index | 通过下标获取元素的值 | lindex key 1 |
【Llen】 key | 返回列表长度 | llen key |
【lrem】 key count element | 删除指定数量的匹配值 | LREM list 1 key |
【ltrim】 key star stop | 修剪操作,通过下标截取指定的长度 | LTRIM key 1 2 |
【rpoplpush】 source destination | 移除列表的最后一个元素,将他移动到新的列表中! | RPOPLPUSH mylist myotherlist |
【linsert】 key berfore/after pivot element | 将某个具体的value插入到列中的某个元素的前面或者后面 | RPUSH mylist “hello” |
set集合
关键字/参数 | 作用 | 示例 |
---|
【sadd】 key member | 向集合里面添加一个值 | sadd myset “hello” |
【Smembers】 key | 查看指定set的所有值 | smembers myset |
【SisMember】key value | 判断某一个值是不是在set集合中,类似于Java:contains | SISMEMBER myset hello |
【Scard 】 key | 获取set集合中的内容元素个数 | SCARD myset |
【Srem】 key value | 移除set集合中的指定元素 | srem myset hello |
【SRandMember】 key number | 随机抽选出指定个数的元素 | SRANDMEMBER myset 2 |
【Spop】 key | 随机删除key! | spop myset |
【SMove】 source destination member | 将一个指定的值,移动到另外一个set集合 | smove myset myset2 kuangshen |
集合 | | |
【sdiff】 key1 key2 | 差集 注意是以key1为参照物 | sdiff key1 key2 |
【sinter】 key1 key2 | 交集 共同好友就可以这么实现 | sinter key1 key2 |
【sunion】 key1 key2 | 并集 | sunion key1 key2 |
zset集合
Zset和Set多了一个Z,在set的基础上增加了一个值,set k1 v1 ,zset k1 score1 v1
关键字/参数 | 作用 | 示例 |
---|
【Zadd】key score1 member1 [score2 member2] | 向set有序集合添加一个或者多个成员,如果存在就更新 | zadd myset 1 one |
【Zrange】key min max | 返回集合中指定成员的索引 | zrange myset 0 -1 打印所有 |
【ZrevRange】key min max [withscores] | rev为反转从大到小进行输出.可以加上withscores显示顺序值 | ZREVRANGE salary 0 -1 |
【ZrangeByScore】key min max [withscores] | 返回区间的成员 可以加上withscores显示顺序值 | ZRANGEBYSCORE salary -inf 2500 withscores |
【zrem】 key member … | 移除有序集合中的元素 | zrem salary xiaoming |
【zcard】key | 获取集合成员数量 | zcard salary |
【zcount】key min max | 计算在有序集合中指定区间的成员数 | zcount myset 1 3 |
hash
field val为hash映射对 key为集合名
关键字/参数 | 作用 | 示例 |
---|
【hset】key field val | 设置一个值 | hset myhash field1 kuangshen |
【hget】key field | 获取一个值 获取存储在哈希表中的指定字段的值 | hget myhash field1 |
【hmset】key field1 val1 [field2 val2] | 同时将多个field-value键值对设置到哈希表中 | hmset myhash field1 hello field2 world |
【hmget】key field [field ] | 获取所有给定字段的值 | hmget myhash field1 field2 |
【hkeys】key | 获取所有的键 | hkeys myhash |
【hvals】key | 获取所有的值 | hvals myhash |
【hgetall】key | 获取在哈希表中指定 key 的所有字段和值 | hgetall myhash |
【hlen】key | 获取哈希表中字段的数量 | hlen myhash |
【hdel】key field [field | 删除一个或者多个哈希表字段 | hdel myhash field1 |
【hexists】key field | 查看指定的字段是否存在 | hexists myhash field2 |
【hincrby】 key field increment | 为指定字段的整数值加上 指增量incement | hincrby myhash field3 1设置自增1 |
【hsetnx】key field value | 如果不存在field字段,设置这个字段的值 | hsetnx myhash field4 hello |
geospatial 地理位置空间
关键字/参数 | 作用 | 示例 |
---|
【geoadd 】 key 经度 纬度 名称(多组) | 添加地理位置 | geoadd china:city 116.40 39.90 beijing |
【geopos 】 key 名称[名称] | 获取指定名称地理位置的信息 | geopos china:city hangzhou beijing |
【geodist 】 key 名称1 名称2 单位(m km mi ft) | 返回两个给定位置的直线距离 | geodist china:city hangzhou shanghai |
【georadius 】 key 经度 纬度 距离 单位 count 筛选数量 | 找出某一半径内的元素 | GEORADIUS china:city 110 30 500 km withdist(直线距离)/withcoord(经纬度) count 2 |
【georadiusbymember】 key 名称 距离 单位 | 找出位于指定范围内的元素,中心点是由给定的位置元素决定 | GEORADIUSBYMEMBER china:city beijing 1000 km |
【grohash】 key 名称 … | 将二维的经纬度转换为一维的字符串,如果两个字符串越接近,那么则距离越近! | GEOHASH china:city beijing chongqing |
hyperloglog 位图
关键字/参数 | 作用 | 示例 |
---|
【pfadd】 key element… | 创建第一组元素 mykey | pfadd mykey a b c d e f g h i j |
【pfcount】 key … | 统计mykey元素的基数估值之和 | PFCOUNT mykey mykey2 |
【pfmerge】 newkey key1 key2 … | 将多个 HyperLogLog 合并为一个 | PFMERGE mykey3 mykey mykey2 |
bitmap 位图
关键字/参数 | 作用 | 示例 |
---|
【setbit】key offset value | 设置某一位的bit值 | setbit key 1 1 |
【getbit】key offest | 获取指定位的bit值 | getbit sign 3 |
【bitcount】key start end | 统计指定区间的1的数量 | bitcount sign |