list 可以重复 set不可以 list 有序 set元素位置无序
key常用命令
#1. 存储数据
sadd key member [member ...]获取的结果是无序的
#2. 获取数据(获取全部数据)
smembers key
#3. 随机获取一个数据(获取的同时,移除数据,count默认为1,代表弹出数据的数量)
spop key [count]
#4. 交集(取多个set集合交集)
sinter set1 set2 ...
#5. 并集(获取全部集合中的数据)
sunion set1 set2 ...没有重复
#6. 差集(获取多个集合中不一样的数据)
sdiff set1 set2 ...大的在前小的在后
# 7. 删除数据
srem key member [member ...]
# 8. 查看当前的set集合中是否包含这个值
sismember key member
zset的常用命令
zset 强行有序
#1. 添加数据(score必须是数值。member不允许重复的。)
zadd key score member [score member ...]
#zadd activ:01 100 wangge
#zadd activ:02 1000 xiaoqi
#2. 修改member的分数(如果member是存在于key中的,正常增加分数,如果memeber不存在,这个命令就相当于zadd)
zincrby key increment member
#3. 查看指定的member的分数
zscore key member#4. 获取zset中数据的数量
zcard key#5. 根据score的范围查询member数量
zcount key min max
#6. 删除zset中的成员
zrem key member [member...]#7. 根据分数从小到大排序,获取指定范围内的数据(withscores如果添加这个参数,那么会返回member对应的分数)
zrange key start stop [withscores]加上withscores 返回数字 如果不加就只有名字 0 2 是下标
#8. 根据分数从大到小排序,获取指定范围内的数据(withscores如果添加这个参数,那么会返回member对应的分数)
zrevrange key start stop [withscores]
#9. 根据分数的返回去获取member(withscores代表同时返回score,添加limit,就和MySQL中一样,如果不希望等于min或者max的值被查询出来可以采用 ‘(分数’ 相当于 < 但是不等于的方式,最大值和最小值使用+inf和-inf来标识)
zrangebyscore key min max [withscores] [limit offset count]
#10. 根据分数的返回去获取member(withscores代表同时返回score,添加limit,就和MySQL中一样)
zrevrangebyscore key max min [withscores] [limit offset count]括号大于但是不等于
key常用命令
#1. 查看Redis中的全部的key(pattern:* ,xxx*,*xxx)
keys patternkeys * 所有的键 keys k* k开头得键
#2. 查看某一个key是否存在(1 - key存在,0 - key不存在)
exists key以1结尾的
#3. 删除key
del key [key ...]#4. 设置key的生存时间,单位为秒,单位为毫秒,设置还能活多久
expire key second
pexpire key milliseconds
#5. 设置key的生存时间,单位为秒,单位为毫秒,设置能活到什么时间点
expireat key timestamp
pexpireat key milliseconds
#6. 查看key的剩余生存时间,单位为秒,单位为毫秒(-2 - 当前key不存在,-1 - 当前key没有设置生存时间,具体剩余的生存时间)
ttl key
pttl key
#7. 移除key的生存时间(1 - 移除成功,0 - key不存在生存时间,key不存在)
persist key
#8. 选择操作的库
select 0~15
#9. 移动key到另外一个库中
move key db
库的常用命令
#1. 清空当前所在的数据库
flushdb#2. 清空全部数据库
flushall#3. 查看当前数据库中有多少个key
dbsize#4. 查看最后一次操作的时间
lastsave#5. 实时监控Redis服务接收到的命令
monitor设置了之后 ,远程有人动数据库就有日志提示