key
1.keys 命令用于查找所有符合给定模式 pattern 的 key 。
keys * 查找所有的key返回一个列表
2.EXISTS xxx 检查是否有指定名字为xxx的key
有就返回1,没有就返回0
3.move 移动
move k1 2 :把k1移动到3号库去
4.expire key 秒钟 :为给定的key设置过期时间
5.ttl key :查看还有多少秒过期,-1表示永不过期,-2表示已过期
6.type key :查看key是什么类型
其余的key可以去redisdoc.com查找
string
1. set/get/del/append/strlen :这个一眼看过去就知道,就不多说了
2.incr key :将key自加一此处的key必须是整形
3.incrby key x :将key自加任意的数字就不是自加一了
4.decr key :将key自减一此处的key必须是整形
5.decrby key x : 将key自减任意的数字就不是自减一了
6.getrange :获取指定范围区间内的值,下表从0开始,类似与Python中的切片,选择的范围是左闭右闭,-1也是最后一位
7.setrange :覆盖指定范围内的值
8.setex key time value :在给key生成的时候建立一个死亡时间
9.setnx key value :如果事先存在该key则返回一个0不存在则建立返回一个1
10.mset k1 v1 k2 v2 k3 v3.....::批量生成多个key和value(mset的m就是more的意思)
11.mget k1 k2 k3..... :批量获得key的值(mset的m就是more的意思)
12.msetnx k1 v1 k2 v2 ....:如果里面有一个key存在则所有都失败,不重复的也不会被储存,失败返回0
13.getset key value :先get在set
list
1.lpush/rpush/lrange
lpush 是将value从右往左存入 rpush是将value从左往右存入 lrang用来查看list里面的值
2.lpop/rpop :l从左边第一个出栈,r从list的右边第一个出栈
3.lindex key index :按照下标显示key的value
4.lrem key n value :在list里面删除n个value
5.ltrim key 开始index :结束index 截取指定范围的值后重新在赋值给key
6.rpoplpush list1 list2 :将list1中栈低的出栈作为list2的输出在左边(栈顶入栈)
7.lset list index value :将list里面下标为index的设置一个value
8.linsert list before/after value value1 :在list中第一个value的前面/后面插入value1
set
set是单值多value的数据结构,与list很像,但是set里面的value不能重复,就是说不能有两个相同的值如果新建一个set往里面传入1 1 2 2 3 3 他不会报错,但是相同的数据只会取一个,也就是说最后会生成一个3个value的set
1.sadd/smembers/sismember
sadd set values:新建或者往一个set里面增加value(可以一次多个添加)
smembers set :查看一个set里面所有的值
sismember set value:如果成员元素是集合的成员,返回 1 。 如果成员元素不是集合的成员,或 key 不存在,返回 0 。
2.scard :获取集合里面的元素的个数
3.srem set value :删除集合中的元素
4.srandmember set n :集合随机出n个数
5.spop set :随机出栈
6.smove set1 set2 value :将集合1中的value出栈然后入栈到集合2中
7.交并补
差集 sdiff set1 set2 set1的元素在set2中没有的拿出来
交集 sinter set1 set2 set1和set2中有的拿出来
并集 sunion set1和set2取并集
hash
非常重要,Redis的key-value 中的key就是string,value就是object
KV模式不变但是V是一个键值对
1.hset/hget/hmset/hmget/hgetall/hdel
1.1 hset hash a 1 b 2 c 3 (没有就生成,有就修改,如果是修改返回值会为0)在这里就相当于Python的一个二级字典,一级key是hash二级是a,b,c和他们分别对应的值
1.2后面的就和上面的解释是一样的了,这里就不多详细介绍,
2.hlen hash :查看hash下有多少个二级key
3.hkeys/hvals hash :查看该hash下的所有key或value
4.hincrby/hincrbyfloay :将hash中的加上一个整形或者加上一个浮点型
5.hsetnx :有就不生成返回0,没有就生成返回1
Zset(sorted set)
在set的基础上家里一个score值,之前set是k1 v1 v2 v3 v4现在Zset是 k1 score v1 score v2 score v3
1.zadd/zrange withscore :增加一个Zset/按照下标去查找,可以选择增加withscores选项不加就不会显示score信息
2.zrangebuscore key 开始score 结束score (-inf +inf表示负无穷和正无穷 小括号“(5”表示从5开始但是不包括5)
2.1按照分数筛选,加上withscores就会显示分数不加就不会有
2.2 limit [offset count]
offset就是偏移量,比如从第几个开始,而count表示取几条数据。
3.zrem Zset value删除Zset下的元素value(包括他对应的分数)
4.zcard/zcount /zscore
zcard Zset:统计Zset下有多少个元素
zcount Zset score开始 score结束 :统计Zset中从分数范围合格的数量
zscore Zset value :统计Zset下的value的分数
5.zrevrank Zset value :逆序获得value在Zset里的下标
6.zrevrank Zset 开始下标 结束下标 :逆序获得Zset的值
7.zrevrangebyscore Zset 结束分数 开始分数 :获取Zset的结束分数到开始分数