数据库相关命令
- dbsize: 查看当前数据库中键的数量
- flushdb:清空当前数据库
- flushall: 清空所有数据库
- select: 切换数据库(默认为16个库,0-15号)
Key相关命令
既然Redis是通过键值对来存储数据的,它自然就提供了很多和Key相关的命令:
- del YOUR_KEY: 删除键
- exists YOUR_KEY: 查看键是否存在
- expire YOUR_KEY SECONDS: 在SECONDS秒之后使得键YOUR_KEY过期
- keys *: 查看所有键,除此之外,还有很灵活的查询方式,比如:keys a*, keys ???等
- ttl YOUR_KEY:查看还有多少秒指定的键YOUR_KEY过期,-1代表永不过期
- type YOUR_KEY: 查看键的数据类型
- unlink YOUR_KEY: 根据值选择非阻塞性删除(异步删除)
Value相关命令
- append KEY VALUE: 将指定的值追加到原来值的末尾
- decr KEY:将KEY对应的数字值减1。注意只能对数字值操作,如果为空的话,减后的值为-1
- decrby KEY:将KEY对应的数字值按指定步长减少。
- get KEY: 获取指定键对应的值
- getset KEY NEW_VALUE: 在获取旧值的同时设置新值
- getrange KEY START END: 获取键值的指定范围内的值(子字符串)
- incr KEY:将KEY对应的数字值增1。注意只能对数字值操作,如果为空的话,新增后的值为1
- incrby KEY:将KEY对应的数字值按指定步长增加。
- mget KEY1 KEY2 KEY3: 同时获取多个值
- mset KEY1 VALUE1 KEY2 VALUE2 KEY3 VALUE3: 同时设置多个键值
- msetnx KEY1 VALUE1 KEY2 VALUE2 KEY3 VALUE3: 同时设置多个键值,如果键已经存在,则不会进行覆盖原值操作
- set KEY VALUE: 为指定键赋值
- setex KEY SECONDS VALUE:在赋值的同时设定该值的过期时间
- setnx KEY VALUE:只有当KEY不存在时,设置其值
- strlen KEY: 获取值的长度
列表相关命令
- lindex KEY index:按照索引下标取元素
- linsert KEY before/after VALUE NEWVALUE:
- llen KEY: 获取列表长度
- lrem KEY N VALUE: 从左边删除 N 个值为VALUE的数值
- lset KEY INDEX VALUE:将KEY所对应列表中下表为INDEX的值替换为VALUE
- lrange KEY START END:通过KEY从指定的范围(START-END)取值,比如取所有值:lrange students 0 -1
- lpop KEY: 从左边弹出一个值
- lpush KEY VALUE1 VALUE2: 从左向右向对应的键中插入多个数值
- rpop KEY: 从右边弹出一个值
- rpoplpush KEY1 KEY2:从右边弹出一个值,同时插入到列表左边
- rpush KEY VALUE1 VALUE2: 从右向左向对应的键中插入多个数值
集合相关命令
- sadd:将一个或多个值添加到集合key中,已经存在的值将被忽略
- scard KEY: 返回集合中元素个数
- sdiff KEY1 KEY2: 返回两结合的差集(存在于KEY1中,但不存在于KEY2中)
- sinter: 返回两集合的交集
- sismember KEY VALUE: 判断和KEY对应的集合中是否存在VALUE,返回值为1/0
- smembers:获取集合的所有值
- spop KEY: 从集合中随机弹出一个值
- srandmember KEY N: 随机从集合中取出N个值,这个操作并不会从集合中删除这些值。
- srem KEY VALUE1 VALUE2: 删除集合中的一些元素
- sunion KEY1 KEY2: 返回两集合的并集
哈希相关命令
- hexists KEY FIELD: 检查哈希中对应的KEY下某个FIELD是否存在
- hget KEY FILED: 获取哈希中的值
- hincrby KEY FIELD NUMBER: 将哈希表中的某字段值增加指定的NUMBER
- hkeys KEY:查看哈希中的所有FIELD
- hmset KEY FIELD1 VALUE1 FIELD2 VALUE2。向哈希中存储多个字段值
- hset KEY FIELD VALUE, 将值存储到哈希中。比如:hset user:9901 id 20229901, hset user:9901 name Paul
- hset KEY FIELD VALUE, 将值存储到哈希中,只有当FIELD不存在时才会起作用。
- hvals KEY:查看哈希中的所有值
有序集合对应命令
- zadd KEY SCORE1 VALUE1 SCORE2 VALUE2: 在一个有序集合中添加数据
- zcount KEY SCORE1 SCORE2: 统计SCORE1和SCORE2之间值的数量
- zincrby KEY NUMBER VALUE: 将对应值的分数增加NUMBER
- zrange KEY START END [withscores]: 从有序集中取出指定范围的值,例如:zrange laptops 0 01代表取出laptops对应的所有值。如果添加了withscores,则会同时返回值对应的评分。
- zrangebyscore KEY START END [withscores]: 取出值在START和END之间的所有值
- zrank KEY VALUE:检查某个值对应的排名
- zrem KEY VALUE: 删除集合下指定值对应的元素
Bitmaps相关的命令
- bitcount KEY:统计KEY对应bitmaps中值为1的数量
- getbit KEY OFFSET: 取出偏移量为OFFSET位置处的值
- setbit KEY OFFSET VALUE: 在KEY对应的bitmaps中偏移量为OFFSET的位置设置值为VALUE。比如:setbit demo:20220917 23 1