string
特点
key-value 形式,用于管理 redis 字符串值
适用场景
微博数、粉丝数
常用命令
# 设置值
set key value
# 获取值
get key
hash
特点
相当于一个key 对应一个map (map中又是key- value)
适用场景
对象包含很多属性,如ID下面有姓名、年龄、地区等,应用于归类
常用命令
#设置值
hset key field value
#获取值
hget key field
# 获取指定 key 的所有字段和值
hgetall key
# 获取所有字段
hkeys key
list
特点
有顺序可重复
适用场景
比如twitter的关注列表,粉丝列表等
常用命令
# 从左添加元素
lpush key value1 value2...
# 从右添加元素
rpush key value1 value2...
# 获取列表指定范围内的元素
lrange key start stop
# 从左边取删除第一数
lpop list
#从右边取删除第一个数
rpop list
# 通过索引获取指定位置的元素
lindex key index
# 获取列表长度
llen key
set
特点
无顺序,不能重复
适用场景
一个用户所有粉丝存在一个集合,对不同集合求差值
常用命令
# 向集合添加一个或多个成员
sadd key member1 member2...
# 返回集合中的所有成员
smembers key
# 删除元素
srem key member
# 查看集中的元素个数
scard key
# 判断该元素是否存在集合中,存在1,不存在0
sismember key member
# 随机返回集合中的某个元素
srandmember key
zset
特点
有顺序,不能重复
适用场景
排行榜
常用命令
# 添加元素,如果成员已存在,则更新他的score
zadd key score member score member...
#查看指定区间内的成员,从小到大
zrange key 0 -1
# 从大到小查看所有元素
zrevrange zset1 0 -1
#查看指定区间的元素和分数
zrange key start stop [WITHSCORES]
TTL 命令
以秒为单位返回 key 的剩余过期时间
命令
ttl key