1、string类型
最为基础的数据存储类型。在Redis中字符串类型的Value最多可以容纳的数据长度是512M。
命令 | 描述 | 例子 |
Set | 赋值 | SET key value |
Get | 获取值 | GET key |
APPEND | 追加字符串 | APPEND key value |
DECR | 减少值 | DECR key |
INCR | 增加值 | INCR key |
DECRBY | 设置减少数值的步长 | DECRBY key decrement |
INCRBY | 设置增加数值的步长 | INCRBY key increment |
GETSET | 先获取值再赋值 | GETSET key value |
STRLEN | 返回key的长度 | STRLEN key |
SETEX | 设置key在服务器中存在的时间 | SETEX key seconds value |
SETNX | Key不存在设置值,否则不做操作 | SETNX key value |
SETRANGE | 字符串替换 | SETRANGE key start "value" |
GETRANGE | 截取字符串 | GETRANGE key start end |
SETBIT | 设置二进制的值 | SETBIT key offset value |
GETBIT | 获取二进制的值 | GETBIT key offset |
MGET | 返回多个key的值 | MGET key [key ...] |
MSET | 设置多个key、value | MSET key value [key value ...] |
MSETNX | Key不存在设置多个key、value值,否则不做操作 | MSETNX key value [key value ...] |
2、list类型
List类型是按照插入顺序排序的字符串链表。可以在链表的两头插入或删除元素,List中可以包含的最大元素数量是4294967295。
命令 | 描述 | 例子 |
LPUSH | 在list头部添加多个值 | LPUSH key value [value ...] |
LPUSHX | Key存在则添加值,否则不做操作 | LPUSHX key value |
LRANGE | 遍历list中key数据 | LRANGE key start stop |
LPOP | 从头部弹出key中的值 | LPOP key |
LLEN | 返回key的长度 | LLEN key |
LREM | 删除前面几个值等于某值得元素 | LREM key count value |
LSET | 给下标赋值 | LSET key index value |
LINDEX | 返回下标中的值 | LINDEX key index |
LTRIM | 截取list中的值 | LTRIM key start stop |
LINSERT | 在某个值的前面或者后面插入值 | LINSERT key BEFORE|AFTER pivot value |
RPUSH | 在list尾部添加多个值 | RPUSH key value [value ...] |
RPUSHX | 在list尾部添加单个值 | RPUSHX key value |
RPOP key | 从尾部弹出值 | RPOP key |
RPOPLPUSH | 从一个集合尾部弹出值插入到里一个集合的头部 | RPOPLPUSH source destination |
3、 hash类型
Hashes类型可以看成具有String Key和String Value的map容器。非常适合于存储值对象的信息。如Username、Password和Age等。
命令 | 描述 | 例子 |
HSET | 给key中filed字段赋值 | HSET key field value |
HGET | 获取key中filed的值 | HGET key field |
HEXISTS | 判断filed是否存在 | HEXISTS key field |
HLEN | 获取key 的长度 | HLEN key |
HDEL | 删除file字段 | HDEL key field [field ...] |
HSETNX | 如果filed不存赋值否则不做操作 | HSETNX key field value |
HINCRBY | 给filed增加步长 | HINCRBY key field increment |
HGETALL | 获取所有的filed和value | HGETALL key |
HKEYS | 获取key | HKEYS key |
HVALS | 获取value | HVALS key |
HMGET | 获取所有filed字段的值 | HMGET key field [field ...] |
HMSET | 设置多个filed字段value | HMSET key field value [field value ...] |
4、 set类型
Set类型看作为没有排序的字符集合,Set集合中不允许出现重复的元素,redis可以在服务器端完成多个Sets之间的计算操作,如unions、intersections和differences。这些操作均在服务端完成,因此效率极高,而且也节省了大量的网络IO开销
命令 | 描述 | 例子 |
SADD | 添加值 | SADD key member [member ...] |
SMEMBERS | 遍历集合 | SMEMBERS key |
SCARD | 获取key的成员数量 | SCARD key |
SISMEMBER | 判断成员是否存在 | SISMEMBER key member |
Spop | 随机弹出值 | Spop key |
SREM | 删除指定的成员 | SREM key member [member ...] |
SRANDMEMBER | 随机返回成员,不删除原值 | SRANDMEMBER key |
SMOVE | 移动一个集合的成员到另一个集合 | SMOVE source destination member |
SDIFF | 求集合差集 | SDIFF key [key ...] |
SDIFFSTORE | 集合中的差集存储到新集合中 | SDIFFSTORE destination key [key ...] |
SINTER | 求集合交集 | SINTER key [key ...] |
SINTERSTORE | 将集合交集存储到新集合 | SINTERSTORE destination key [key ...] |
SUNION | 求集合并集 | SUNION key [key ...] |
SUNIONSTORE | 将集合的并集存储到新集合 | SUNIONSTORE destination key [key ...] |
5、 sortedset类型
不允许出现重复的元素,每一个成员都会有一个分数(score)与之关联,用分数来进行排序,分数是可以重复的
命令 | 描述 | 例子 |
ZADD | 添加排序成员 | ZADD key score member [score] [member] |
ZCARD | 获取成员数量 | ZCARD key |
ZCOUNT | 获取分数在min和max之间成员有多少个 | ZCOUNT key min max |
ZINCRBY | 增加指定成员的分数 | ZINCRBY key increment member |
ZRANGE | 遍历成员以及分数 | ZRANGE key start stop [WITHSCORES] |
ZRANGEBYSCORE | 返回分数在min和max之间的成员和分数 | ZRANGEBYSCORE key min max [WITHSCORES] |
ZRANK | 返回成员的下标 | ZRANK key member |
ZREM | 删除指定成员 | ZREM key member [member ...] |
ZREVRANGE | 遍历成员以及分数从大到小 | ZREVRANGE key start stop [WITHSCORES] |
ZREVRANK | 返回成员下标顺序从大到小 | ZREVRANK key member |
ZSCORE | 获取指定成员的分数 | ZSCORE key member |
ZREVRANGEBYSCORE | 获取成员以及分数按照从高到低 | ZREVRANGEBYSCORE key max min [WITHSCORES] |
ZREMRANGEBYRANK | 删除下标之间的数据 | ZREMRANGEBYRANK key start stop |
ZREMRANGEBYSCORE | 删除分数在min和max中的成员 | ZREMRANGEBYSCORE key min max |
6、 redis对于key的应用。
- 使用对key的操作,通常可以用来维护数据
命令 | 描述 | 例子 |
KEYS | 获取所有的key | KEYS pattern |
Del | 删除指定的key | DEL key [key ...] |
EXISTS | 判断key是否存在 | EXISTS key |
MOVE | 移动一个key到另一个库中 | MOVE key db |
RENAME | 给key从新命名 | RENAME key newkey |
RENAMENX | 修改key的名字 | RENAMENX key newkey |
PERSIST | 持久化key | PERSIST key |
EXPIRE | 设置key存活时间 | EXPIRE key seconds |
EXPIREAT | 设置key存活时间(年月日) | EXPIREAT key timestamp |
TTL | 实时查看key存活时间 | TTL key |
RANDOMKEY | 随机返回一个key | RANDOMKEY |
TYPE | 查看key的中value数据类型 | TYPE key |
SELECT | 进入指定库 | SELECT NUM |