Closed zhuangjinxin closed 6 years ago
String是最简单的类型,一个Key对应一个Value,String类型是二进制安全的,可以包含任何数据,比如jpg图片或序列化的对象。
命令 | 说明 | 示例 |
---|---|---|
set | 设置Key对应的值为string类型的Value。如果多次对同一个Key进行Set操作,值会被覆盖 | set name zhuangjinxin |
get | 获取Key对应的string值,如果Key不存在返回nil | get name |
mset | 一次设置多个Key的值,成功返回ok表示所有的值都设置了,失败返回0表示没有任何值被设置 | mset version 10.12.4 memory 8g |
mget | 一次获取多个key的值,如果对应key不存在则对应返回nil | mget version memory |
setrange | 设置指定Key的value值的子字符串 | setrange name 7 xiaoxiao |
getrange | 获取Key的Value值的子字符串 | getrange name 0 5 |
setnx | 设置Key对应的值为string类型的Value。如果Key已经存在,则返回数字0。nx表示"not exist"意思 | setnx name zhuangjinxin |
msetnx | 一次设置多个Key的值,成功返回ok表示所有的值都设置了,失败返回0表示没有任何值被设置,但是不会覆盖已经存在的Key | msetnx age 18 qq 987654321 |
getset | 设置key的值,并返回key的旧值 | getset age 20 |
incr | 对key的值做加加操作,步长为1,并返回新的值 | incr age |
incrby | 同incr类似,加指定值,key不存在时会设置key,并认为原来的value是0 | incrby age 2 |
decr | 对key的值做减减操作,步长为1 | decr age |
decrby | 同decr类似,减指定值 | decrby age 2 |
append | 给指定key的字符串追加value,返回新字符串值的长度 | append name @hotmail.com |
strlen | 取指定key的value值的长度 | strlen name |
Redis hash是一个string类型的field和value的映射表。它的添加、删除操作都是O(1)(平均)。hash特别适用于存储对象。相较于对象的每个字段存在单个string类型。将一个对象存储在hash类型中会占用更小的内存,并且可以更方便的存取整个对象
命令 | 说明 | 样例 |
---|---|---|
hset | 设置hash field为指定值,如果key不存在,则先创建 | hset user:001 name zhuangjinxin |
hget | 获取指定的hash field | hget user:001 name |
hsetnx | 设置hash field为指定值,如果key不存在,则先创建。如果存在则返回0 | hset user:001 name jason |
hmset | 同时设置hash的多个字段 | hmset user:002 id 2 name zhuangjinxin gender male age 17 |
hmget | 获取全部指定的hash field | hmget user:002 id name gender age |
hincrby | 指定的hash field加上给定值 | hincrby user:002 age 3 |
hexists | 测试指定field在hash中是否存在 | hexists user:002 name |
hlen | 返回指定hash的field数量 | hlen user:002 |
hdel | 删除指定hash的field | hdel user:002 gender |
hkeys | 返回hash的所有field | hkeys user:002 |
hvals | 返回hash的所有value | hvals user:002 |
hgetall | 获取某个hash中全部的field及value | hgetall user:002 |
Redis简介