redis的常用命令总结
1、redis 启动后的杂项基础知识
默认16个数据库,初始默认使用0号库
select命令切换数据库
Dbsize 查看当前数据库,key的数量
flushdb:清空当前库
flushall :通杀全部库
2、 key关键字
exists key : 是否存在key
move k3 3: 将k3 移动到3号库,当前库就没有了
ttl k1 : k1 还能存活多久 -1 :永不过期
expire k3 10 v3 : 给k3 设置10秒的过期时间
type k1 : 查看k1 值的数据类型
3、 redeis__String
1、set get del append strlen
2、Incr decr incrby decrby、
3、getrange:获取指定区间范围内的值 get k1 0 5
setrange: 覆盖指定范围内的值
4、setex :
setex k1 10 v1 在创建k1时,给其设置10秒的过期时间
setnx: set if not exist 不存在才进行覆盖
5、mset k1 v1 k2 v2 k3 v3
mget
msetnx : mset if not exist : 当有一个没创建成功,则本次操作失效
4、 redeis__List 单值多value
1、lpush 、rpush 、lrange
lpush : 从左进 类似于栈
rpush : 从右进 类似于队列
lrange: 遍历list 中的变量 lrange list 0 -1 ()从左到右遍历
2 、lpop rpop
lpop : 将左边的栈顶数据出栈
rpop: 将右边的栈顶数据出栈
3、lindex: 按照索引下表获取元素
4、llen : 获取list的长度
5、lrem :删除n个value lrem list 2 3 在list中删除两个3
6、ltrim list start end : 截取指定范围的值后,再赋值给key
7、lset key index value : 将list04 的第2位设置为3
8、linsert keybefore/after key_value value
linsert list04 before 1 java ==> 将java插入到list04的1之前
5、 redeis__Set 单值多value
1、sadd : 向set中添加数据
sadd set01 1 1 2 2 0 3
2、smembers : 取出set中的所有成员
smembers set01
3、sismember set xx : 判断xx是不是set的一个成员
4、scard set : 返回set中元素的个数
5、srem set xx : 删除set 中的xx元素
7、srandmember
srandmember set 3: 在set中随机抽取3个元素
8、spop set : set中的元素随机出栈
9、smove set1 set2 xx : 将set1中的xx元素移动到 set2中
10、数学类集合
sdiff 差集
sdiff set01 set02 : 在set01中,但不在set03 set03 中
sinter 交集
sinter set01 set02
sunion : 并集
sunion set01 set02
6、 redeis__Hash KV模式不变 但是Value是一个键值对
1、hset
hset user id 1 : user ===> {id : 1}
hset user name hc : user ===> {id : 1,name:hc}
2、hget
hget user id
3、hmset
hmset customer id 1 name zs age 22
4、hmget
hmget customer id name age
5、hgetall
hgetall customer
6、hdel
hdel user name : 将user中的name删除
7、hlen
hlen user : 获取user中 kv 键值对的个数 4:28
8、hexists key : 在key里面某个值的key
hexists customer id
9 、hkeys : 取得map中所有的key
hvals : 取得map中所有的value
10、hincrby hincrbyfoat
11、hsetnx(hset not exists)
不存在则插入成功
7、 redeis__ZSet
1、向zset中添加元素 zdd key score value1
2、查询zset中的所有元素
3、根据分数来检索zset
zrangebyscore zset01 60 (90 60 =< 获取的值 <90
zrangebyscore zset01 (60 (90 60 < 获取的值 <90
zrangebyscore zset01 60 90 limit 2 2 在zrangebyscore zset01 60 90结果中,index=2开始截取2位
zrem key
zcard zset01