Redis的5种数据类型:
- 字符串类型string
- 哈希类型hash
- 列表类型list
- 集合类型set
- 有序集合zset
常用命令
字符串类型string
命令 | 解释 | 例子 | 代码 |
---|---|---|---|
set 键 值 | 向redis数据库中添加1个字符串类型的键和值,返回OK表示添加成功。同名的会替换 | 添加一个键为name,值为xiaoer。 | set name xiaoer |
get 键 | 从数据库中取出一个指定键的值,如果有返回值,如果没有返回nil | 获取name的元素 。 | get name |
del 键 | 删除指定的键和值,如果删除成功,返回删除的个数。否则返回0 | 删除name元素。 | del name |
setnx 键 值 | 在指定的 key 不存在时,为 key 设置指定的值。 设置成功,返回 1 ;设置失败,返回 0 | 设置键为sex,值为male。 | setnx sex male |
哈希类型hash
命令 | 解释 | 例子 | 代码 |
---|---|---|---|
hset 键 字段 值 | 向指定的键中添加一对hash类型的字段名和值 | 创建hash类型的键为user,并且添加一个字段为username,值为xiaoer。 | hset user username xiaoer |
hget 键 字段 | 取出指定键的指定字段的值 | 获取user中的username 。 | hget user username |
hmset 键 字段 值 字段 值 | mulitple,一次向某个键中设置多个字段名和值 | 向user中同时添加多个字段和值,birthday 2018-01-01 sex male。 | hmset user birthday 2018-01-01 sex male |
hmget 键 字段 字段 | 一次从指定的键中得到多个字段的值 | 设置键为sex,值为male。 | hmget user birthday sex |
hdel 键 字段 字段 | 删除一个键中的一个或多个字段 | 设置键为sex,值为male。 | hdel user birthday |
hgetall 键 | 得到某个键所有的字段值 | 设置键为sex,值为male。 | hgetall user |
列表类型list
命令 | 解释 | 例子 | 代码 |
---|---|---|---|
lpush 键 元素 元素 | left push 在列表的左边向指定的键中添加列表元素,如果该键并不存在,Redis将为该键创建一个新的链表,如果这个键已经存在,则是向list添加元素。 | 向mylist键的列表中,从左边添加a b c三个元素 | lpush mylist a b c |
rpush 键 元素 元素 | right push在列表的右边向指定的键中添加列表元素 | 从右边添加one two three三个元素 | rpush mylist one two three |
lpop 键 | left pop 从指定键中的左边弹出一个元素,列表中的元素就删除了。 | 删除name元素。 | lpop mylist |
rpop 键 | right pop从指定键的右边弹出一个元素,列表中的元素就删除了。 | 设置键为sex,值为male。 | rpop mylist |
lrange 键 开始 结束 | 从指定键的列表中取出指定范围的元素列表,从左边数起从0开始,从右边数起从-1开始。如果要取整个列表,开始是0,结束是-1 | 查询所有的元素 | lrange 0 -1 |
llen 键 | 得到指定列表的长度 | 设置键为sex,值为male。 | llen mylist |
集合类型set
命令 | 解释 | 例子 | 代码 |
---|---|---|---|
sadd 键 元素 元素 | 向set集合中添加1个或多个元素 | 向myset集合中添加A B C 1 2 3 六个元素。 | set myset A B C 1 2 3 |
smembers 键 | 查询指定的集合中所有的元素 | 获取name的元素 。 | smembers myset |
sismember 键 元素 | 判断指定的元素是否在某个集合中,如果存在返回1,否则返回0 | 删除name元素。 | sismember myset A |
srem 键 元素 元素 | remove 删除指定的一个或多个元素 | 设置键为sex,值为male。 | srem myset A |
sunion 键1 键2 | 返回给定集合的并集。不存在的集合 key 被视为空集。 | 得到set1和set2的并集 | sunion set1 set2 |
有序集合zset
命令 | 解释 | 例子 | 代码 |
---|---|---|---|
zadd 键 分数 值 分数 值 | 向有序集合添加一个或多个成员 | 添加键country,分数是10,值是Japan | zadd country 10 japan |
zrange 键 开始索引 结束索引 | 通过索引区间返回有序集合中指定区间内的成员 | 查询country中所有的元素 | zrange 0 -1 |
zrem 键 值 值 | 移除有序集合中的一个或多个成员 | 删除值为japan的元素 | zrem country japan |
zrank 键 值 | 返回有序集合中指定成员的索引 | 查询Japan的索引号(从0开始) | zrank country japan |
zcard 键 | 获取有序集合的成员数 | 查询country中还有多少个元素 | zcard country |
zscore 键 值 | 得到指定成员的分数 | 查询japan分数 | zscore country japan |