list :有序,可以重复 ;(有序是指添加时候的顺序)
set :无序,不可重复 ;
key 存在则修改对应的值,不存在则添加 key
set key value

get key

key 存在则修改对应的值,不存在则新建 key。
key 存在的时候修改值,返回的是 key 对应的修改之前的值。
key 不存在的时候,返回的是nil
getset key value


mset key value [key value ......]

mget key [key .......]

可以删除多个
del key [key .......]

当存储的字符串是整数时
incr key

当存储的字符串是整数时
incrby key increment

当存储的字符串是整数时
decr key

当存储的字符串是整数时
decrby key decrement

append是向键值对的末尾追加 value,如果键不存在,则将改建的值设置为 value,相当于set key value,返回值是追加后字符串的总长度。
append key value

strlen key

返回的是截取的子串,下标从0开始,起始位置和结束位置都包含。
当起始位置是 0,结束为止为 -1 的时候,截取的是整个字符串。
getrange key 起始位置 结束位置

setrange key 起始位置 需要替换的值
将 键为 a 的字符串从 下标为 2 的位置开始 替换成 redis

时间默认以秒为单位
setex key 过期时间 value

hash叫散列类型,它提供了字段和字段值的映射。字段值只能是字符串类型,不支持散列类型、集合类型等其它
类型

hset key filed value

hmset key filed value [filed value ......]

hget key filed

hmget key filed [filed ......]

hgetall key

hdel key filed [filed ......]

当时字段的值是数值类型的时候
hincrby key filed increment

0 :不存在,1 :存在
hexists key filed

hkeys key

hvals key

hlen key

Redis 中的 list 是采用链表的方式来存储的,与 java 中的 LinkedList 相似,所以对 Redis 中的 List 的操作,是操作两端的数据。
lpush key value [value ......]

rpush key value [value ......]

列表类型最常用的命令之一,获取列表中的某一片段,将返回start、stop之间的所有元素(包含两端的元素),索
引从0开始。索引可以是负数,如:“-1”代表最后边的一个元素
lrange key start end

LPOP(rpop)命令从列表左边(右边)弹出一个元素,会分两步完成:
第一步是将列表左边的元素从列表中移除
第二步是返回被移除的元素值
lpop key

rpop key

llen key

lindex key index

lset key index value

sadd key value [value ......]

srem key value [value ......]

smembers key

0 : 不存在 ,1 :存在
sismember key value

scard key

由于 set 集合是无序的,所以会随机的弹出一个值。
spop test

Sortedset又叫zset
Sortedset是有序集合,可排序的,但是唯一。
Sortedset和set的不同之处,是会给set中的元素添加一个分数,然后通过这个分数进行排序。
向有序集合中加入一个元素和该元素的分数,如果该元素已经存在则会用新的分数替换原有的分数。返回值是新加
入到集合中的元素个数,不包含之前已经存在的元素
zadd key score member [score member ......]

zscore key member

zrem key member

0 :不存在,1 :存在
返回值为 存在的个数
exists key [key ......]

默认以秒为单位
expire key 秒数

设置为以 毫秒 为单位
pexpire key milliseconds
对应的值还在
persist key


ttl key

type key

keys *

keys *key*

del key [key ......]

rename key newkey
