Redis---常用命令

Redis常用命令

1.Redis存储数据的结构
常用的5种数据结构
key-string:一个key对于一个值
key-hash:一个key对应一个Map
key-list:一个key对应一个列表
key-set:一个key对应一个集合
key-zset:一个key对应一个有序的集合

另外三种数据结构
HyperLogLog:计算近似值
GEO:地理位置
BIT:位图,一般存储的也是一个字符串,存储的是一个byte[]

五种常用的存储数据结构图
在这里插入图片描述
key-string:最常用,一般用于存储一个值
key-hash:存储一个对象数据
key-list:使用list结构实现栈和队列结构
key-set:交集,差集和并集的操作
key-zset:排行榜,积分存储等操作

2.string常用命令
文档:http://redisdoc.com/string/index.html#

#1、添加值
set key value

#2、取值
get key

#3、批量操作
mset key value [key value…]
mget key [key…]

#4、自增命令(自增1)
incr key

#5、自减命令(自减1)
decr key

#6、自增或自减指定数量
incrby key increment
decrby key increment

#7、设置值的同时设置生存时间(每次向redis中添加数据时,尽量都设置生存时间)
setex key second value

#8、设置值,如果当前key不存在的话(如果这个key存在,什么事都不做,如果这个key不存在,和set命令一样)
setnx key value

#9、在key对应的value后,追加内容
append key value

#10、查看value字符串的长度
strlen key

3.hash常用命令
#1、存储数据
hset key field value

#2、获取数据
hget key field

#3、批量操作
hmset key field value [field value …]
hmget key field [field …]

#4、自增(指定自增的值)
hincrby key field increment

#5、设置值(如果key-field不存在,那么就正常添加,如果存在,什么事都不做)
hsetnx key field value

#6、检查field是否存在
hexists key field

#7、删除key对应的某个或多个field
hdel key field [field…]
#8、获取当前hash结构中的全部field和value
hgetall key

#9、获取当前hash结构中的全部field
hkeys key

#10、获取当前hash结构中的全部value
hvals key

#11、获取当前hash结构中field的数量
hlen key

4.list常用命令
#1、存储数据(从左侧插入数据,从右侧插入数据)
lpush key value [value…]
rpush key value [value…]

#2、存储数据(如果key不存在,什么事都不做,如果key存在,但是不是list机构,什么都不做)
lpushx key value
rpushx key value

#3、修改数据(修改指定索引位置的值,如果index超出整个列表的长度会失败)
lset key index value
#4、弹栈方式获取数据(左侧/右侧弹出数据)
lpop key
rpop key

#5、获取指定索引范围的数据(start从0开始,stop输入-1,代表最后一个,-2代表倒数第二部)
lrange key start stop

#6、获取指定索引位置的数据
lindex key index

#7、获取整个列表的长度
llen key

#8、删除列表中的数据(他是删除当前列表中的count个value值,count>0从左侧向右侧删除,count<0从右侧向左侧删除),count=0,删除列表全部的value
lrem key count value

#9、保留列表中的数据(保留指定范围内的数据,超过整个索引范围被移除掉)
ltrim key start stop

#10、将一个列表中最后的一个数据,插入到另外一个列表的头部位置
rpoplpush list1 list2

5.set常用命令
#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

6.zset常用命令
#1、添加数据(score必须是数值,member不允许重复)
zadd key score member [score member…]

#2、修改member的分数、(如果member是存在于key中的,正常增加分数,如果member不存在,这个命令相当于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]

#8、根据分数从大到小排序,获取指定范围内的数据(withscores如果添加这个参数,那么会返回member对应的分数)
zrevrenge key start stop [withscores]

#9、根据分数的范围获取member(withscores代表同时返回score,添加limit,就和MySQL中一样,如果不希望等于min或者max的值被查询出来,可以采用‘(分数’ 相当于<或者>,但不等于,是一个开区间,最大值和最小值使用+inf和-inf来标识)
zrangebyscore key min max [withsores] [limit offset count]

#10、根据分数的范围获取member(withscores代表同时返回score,添加limit,就和MySQL中一样)
zrevrangebyscore key max min [withsores] [limit offset count]

7.key常用命令
#1、查看Redis中的全部key(pattern:,xxx,*xxx)
keys pattern

#2、查看某一个key是否存在(1 - key存在,0 - key不存在)
exists key

#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

8.库的常用命令
#1、清空当前所在的数据库
flushdb

#2、清空全部数据库
flushall

#3、查看当前数据库中有多少个key
dbsize

#4、查看随后一次操作的时间
lastsave

#5、实时监控Redis服务接收到的命令
monitor

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值