1.redis是一种高级的key-value的存储系统,其中value支持五种数据类型
a.字符串(String)
b.哈希(hash)
c.字符串列表(list)
d.字符串集合(set)
e.有序字符串集合(sorted set)
2.存储string
字符串类型是redis中最为基础的数据存储类型,它在redis中是二进制安全的,这意味着该类型存入和获取的数据相同。
赋值:
set key value
getset key value 先取值再赋值
取值:
get key
删除:
del key
3.存储哈希
redis中的哈希类型可以看成具有string key 和string value的map容器,所以该类型非常适合用于存储值对象的信息
赋值:
hset key field value 为指定的key设定field/value对
hmset key field value [field2 value2 .....]
取值:
hget key field
hmget key field [field2 .....]
删除:
hdel key field [field2 .....]
4.存储list
在redis中,list类型是按照插入顺序排序的字符串链表。和数据结构中的普通链表一样,我们可以在其头部(left)和尾部(right)添加新的元素。在插入时,如果该键并不存在,redis将为该键创建一个新的链表;与此相反,如果链表中所有的元素均被移除,那么该键也将会被从数据库中删除。
赋值:
lpush key value [value1 value2 ....] 从left添加
rpush key value [value1 value2 ....] 从right添加
取值:
lrange key start end start(0)和end(-1)是下标
获取list元素个数:
llen key
删除:
lrem key count value 删除count个value元素
5.存储set
在redis中,我们可以将set类型看作为没有排序的字符集合,和list类型一样,我们也可以在该类型的数据值上执行添加、删除或判断某一元素是否存在等操作。和list类型不同的是,set集合不允许出现重复的元素。
赋值:
sadd key value [value1 value2 ....]
取值:
smembers key
删除:
srem key value [value1 value2 ....]
6.存储sortedset
sortedset和set类型很相似,都是字符串的集合,主要差别是sortedset中的每一个成员都会有一个分数与之关联,redis正是通过分数来为集合中的成员进行从小到大的排序
赋值:
zadd key score value score1 value1...
取值:
zscore key value 获得指定成员的分数
查询:
zrange key 0 -1 withscores 根据权重查询排序
删除:
zrem key value