Redis常用命令

redis客户端无法显示中文的 情况下 使用 redis-cli --raw 启动客户端

一、keys常用命令:

1.keys* :查看redis中所有的key
2 dbsize:查看redis中key的个数
3 keys [pattern *]:遍历所有key中以[]中参数开头的key
4 msetkey :可以批量插入多个key和value
5 mget key key key ...:获取多个key的值
6 key:flushall:删除所有的key
7 exists key:判断key是否存在,存在返回1,不存在则0
8 del key:删除指定的key
9 type key:返回key的类型

二、设置key指定时间过期的三个命令:

1 expire key seconds:设置key在seconds秒后过期
2 ttl key:查看key剩余的国企时间 返回-2 代表key已经过期不存在了,否则表示key存在 没有过期
3 persist key:去掉key的过期时间 

三、String类型相关的命令:

1 get key:获取key对应的value
2 set key value:设置key-value
4 incr key:key自增1,如果key不存在,自增后 get(key)=1
5 decr key:key自减1,如果key不存在,自减后get(key)=-1
6 incrby key num: k:key  k自增num ,如果key不存在,自增后get(key)=num
7 decr key k:自减k,如果key不存在,自减后get(key)=-k
8 setnx key value:key不存在时,才设置key
9 append key value:在这个key的value上追加value
10 strlen key :返回字符串的长度(注意中文每个字符占用2个字节)
11 incrbyfloat key value:增加key对应的值value
12 getrange key start end :获取字符串指定下标所有的值
13 setrange key index value:设置指定下标所有对应的值

四、Hash(key,value结构,小型的redis,field不能相同,value可以相同)命令:

field:相当于一个key: 
1 hget key field:获取hash key对应的field的value
2 hset key field value:设置 hash key对应的field的value
3 hdel key field:删除hash key对应的field的value
4 hexists key field:判断hash 中key是否有field
5 hlen key:获取hash key field的数量
6 hmget key field1 filed2 ....:批量获取Hash key的一批field对应的值
7 hmset key field1 filed2 ....:批量设置hash key的一批field value
8 hgetall key :返回hash key对应所有的field和value
9 hvals key:返回hash key对应所有field的value
10 hkeys key:返回hash key对应的field
11 hsetnx key filed value:设置hash key对应field的value(如果field已经存在,则失败)
12 hincrby key field intCounter:hash key对应的value自增intCounter
13 hincrbyfloat key field  floatCounter : hincrby 浮点数版

五、list(有序,可以重复,左右弹入弹出)命令:

增
	1 rpush key value1 value2 ....:从列表右端插入值
	2 lpush key value1 value2 ....:从列表左端插入值
	3 linsert key before value newValue:在list指定值钱面插入newValue
	4 linsert key after value newValue:在list指定的值后插入newValue
删
	1 lpop key:从列表左侧弹出一个item
	2 rpop key:从列表右侧弹出一个item
	3 lrem key count value:根据count值,从列表中删除所有value相等的项
		(1)count>0:从左到右,删除最多count个value想等的项
		(2)count<0:从右到左,删除最多Math.abs(count)个value相等的项
		(3)count=0:删除所有value相等的项
	4 ltrim key start end:按照索引范围修剪列表
查
	1 lrange key start end(包含end):获取列表指定索引范围所有item,-- lrange key 0 -1 查看所有的值
	2 lindex key index:获取列表指定索引的item
	3 llen key:获取列表长度
	4 lset key index newValue:设置列表指定索引值为newValue

六、Set(集合:无序,无重复,集合间操作)

查
	1 smembers key:返回集合中所有的元素(如果数据量大,小心使用)
增
	1 sadd key element:向集合key添加element(如果element存在,则失败)
删 
	1 srem key element:将集合key中的element移出掉
其他:
	1 scard key :计算集合大小
	2 sismember key value:判断value是否存在,1:存在,0不存在
	3 srandmember key count:从集合中随机挑count个值
	4 spop key:从集合中随机弹出一个元素
集合间操作:
	1 sdiff key key:求这两个集合中的差集
	2 sinter key key:求这两个集合中的交集
	3 sunion key key:求这两个集合的并集

七、zset(有序集合,无重复元素,element+score)

增:
	1 zadd key score element(可以是多对):添加score和element
删:
	1 zrem key element(可以是多个):删除元素
查:
	1 zrange key start end:返回从start到end中所有的元素
集合间操作:
	1.zunionstore key key:求这两个集合的并集
	2.zinterstore key key:求这两个集合中的交集
其他:
	1.zscore key element:返回元素的分数
	2.zincrby key increscore element:增加或减少元素的分数
	3 zcard key:返回元素的个数
	4 zrank key element:返回元素在集合中的排名
	5 zrangebyscore key minscore maxscore(withscores):返回指定分数范围内的升序元素(分值)
	6 zcount key minscore maxscore:返回有序集合内在指定分数范围内的个数
	7 zremrangebyrank key start(minscore) end(maxscore):删除指定排名内的升序元素

八、Redis数据结构的适用场景:

  • List: 双向列表,适用于最新列表,关注列表等
  • Set: 适用无顺序的集合,点赞,抽奖,已读,共同好友等
  • Hash:对象属性,不定长属性数等
  • KV:单一数值,适用于验证码,缓存等

九、获取Redis某个指定字符开头的key

//所有以某个字符开头的 key
Collection keys = redisCache.keys(‘a’ + “*”);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

往日时光--

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值