key操作
keys * 查看当前库所有的键
exists 判断是否存在key
del 删除某个键
expire 设置键过期时间 单位是s秒
ttl 查看还有多少秒过期 -1表示用不过期 -2表示已经过期
move 把键移到另一个库下
dbsize 查看数据库key的数量
flushdb 清空当前库
flushall 通杀所有库
String类型:String是二进制安全的,可以包含任何数据源,最大512m
get 查看对应的键值
set 添加键值对
append 将给定的value 追加到原值的末尾
strlen < key > 获取值得长度
setnx 当key 不存在的时候设置key值
incr 将key中储存的数字加1,如果为空,则值为1
decr 将key中储存的数字减1,如果为空,则值为-1
incrby/decrby <步长> 将key中的数字增减
String批量处理:
mset 同时设置多个键值对
mget <key 2> 同时获得多个值
msetnx 当给定的key都不存在
getrange
setrange
setex <过期时间> 设置键值的同时,给定过期时间
getset 以旧换新,设置了新的值同时得到旧值
List:链表
1、特点:单键多值
Redis列表是简单的字符串列表,从左或者从右插入
底层是双向链表,对两端的操作性能很高,通过下标查询性能很低
lpush/rpush … 从左或从右插入多个值
lpop/rpop 从左边或右边吐出一个值,值光键亡
rpoplpush 从key1 右边吐出一个值到key2的左边
lrange 按照索引下标获取元素 从左到右
lindex 按照索引下标获取元素 从左到右
llen 获取列表长度 获取列表长度
linsert before 在key中value前插入newvalue
Set:类似list的无序集合,保证列表中不会有重复数据,底层是一个value为null的hash表
sadd 将多个元素加入到key中,重复值忽略
smembers 取出该集合的所有值
sismember 判断集合key中是否有该value值 有就1 没有0
scard 返回该集合的元素个数
srem 删除集合中的某个元素
spop 随机吐出该集合一个值
srandmember 随机从集合中取出n个值,不会从集合中删除
smove 将key1中的value 移动到key2 中
sinter 返回两个集合的交集元素
sunion 返回两个集合的并集
Hash:键值对集合,类似map<String,Object>
hset 给key 集合中的file 键赋值value
hget 从key1 集合file取出value
hmset 批量设置hash的值
hexists 查看key中的field 是否存在
hkeys 列出key中所有的filed
hvals 列出该hash集合中所有的value
zset有序集合:与set集合非常相似,每个成员都关联了score,可以用来排序
zadd 将一个或多个元素以及score加入zset
zrange
zrangebyscore [withscore] [limit offset count] 返回key中 score介于min和max中的成员,升序排列
zrevrangerbyscore [withscore] [limit offset count] 降序
zincrby 在key集合中的value上增加increment
zrem 删除key集合下的指定元素
zcount 统计 区间内的元素个数
zcord 获取集合中的元素个数
zrank 查询value在key中的排名,从0开始