文章目录
- 0 手册地址
- 1 基本知识
- 2 数据结构
- 2.1 string⭐⭐⭐
- set key value(设值)
- get key(得值)
- append key value(加值)
- strlen key(键中值长)
- incr key(加1)
- decr key(减1)
- incrby key offset(加增量)
- decrby key offset(减减量)
- getrange key startIndex endIndex(得索引的子字符串)
- setrange key offsetIndex value(覆盖值)
- setex key seconds value(生存时间)
- setnx key value(没有设值)
- mset key value [key value…](多设)
- mget key [key …](多得)
- msetnx key value[key value…](没有多设)
- 2.2 list⭐⭐⭐
- 2.3 set⭐⭐⭐
- 2.4 hash⭐⭐⭐
- hset key field value [field value …](存键值对)
- hget key field(拿值)
- hmset key field value [field value…](设值覆盖)
- hmget key field [field…](获取多值)
- hgetall key(获取所有域和值)
- hdel key field [field…](删除指定域)
- hlen key(域个数)
- hexists key field(域是否存在)
- hkeys key(所有域列表)
- hvals key(所有值列表)
- hincrby key field int(域中增int)
- hincrbyfloat key field float(域中增float)
- hsetnx key field value(没有时初始化)
- 2.5 zset⭐⭐⭐
- zrange key startIndex endIndex [WITHSCORES](索引范围查询)
- zrangebyscore key min max [WITHSCORES ] [LIMIT offset count](分数范围查询)
- zrem key member [member…](删除)
- zcard key(个数)
- zcount key min max(分数内个数)
- zrank key member(单值排名)
- zscore key member(单值分数)
- zrevrank key member(倒序排名)
- zrevrange key startIndex endIndex [WITHSCORES](范围倒叙取值)
- zrevrangebyscore key max min [WITHSCORES ] [LIMIT offset count](分数范围倒叙取值)
- 2.6 操作key⭐⭐⭐
0 手册地址
手册地址:
redis英文版命令大全
redis中文版命令大全
1 基本知识
1.1 redis-benchmark(测试redis的性能)
1.2 ping(查看状态pong正常)
1.3 info [section](查看redis服务器的统计信息)
section的值:server , clients ,memory等等。不加section 返回全部统计信息
返回值:指定section的统计信息或全部信息
1.4 默认16个库
Redis默认使用16个库,从0到15。 对数据库个数的修改,在redis.conf文件中databases 16,理论上可以配置无限多个。
Redis的库和关系型数据库中的数据库实例类似,但又有一些不同,比如redis中各个库不能自定义命名,只能用序号表示,redis中各个库不是完全独立的,使用时最好一个应用使用一个redis实例,不建议一个redis实例中保存多个应用的数据。Redis实例本身所占存储空间其实是非常小的,因此不会造成存储空间的浪费。
1.5 select db(切库)
1.6 dbsize(当前数据库中key的数目)
1.7 keys *(当前数据库中有哪些key)
1.8 flushdb(清空当前库)
1.9 flushall(清空所有数据库)
这也体现出redis中的库并不是完全无关的。
1.10 config get *(获得redis的所有配置值)
2 数据结构
2.1 string⭐⭐⭐
简介:字符串类型是Redis中**最基本**的数据结构,它能存储任何类型的数据,包括二进制数
据,序列化后的数据,JSON化的对象甚至是一张图片。最大512M。
set key value(设值)
将字符串值 value 设置到 key 中,如果key已存在,后放的值会把前放的值覆盖掉。 返回值:OK表示成功
get key(得值)
功能:获取 key 中设置的字符串值
返回值:key存在,返回key对应的value;
key不存在,返回nil
append key value(加值)
功能:如果 key 存在,则将 value 追加到 key 原来旧值的末尾
如果 key 不存在,则将key 设置值为 value
返回值:追加字符串之后的总长度(字符个数)
strlen key(键中值长)
功能:返回 key 所储存的字符串值的长度
返回值:如果key存在,返回字符串值的长度;key不存在,返回0
incr key(加1)
功能:将 key 中储存的数字值加1,如果 key 不存在,则 key 的值先被初始化为 0 再执行incr操作。
返回值:返回加1后的key值
decr key(减1)
incrby key offset(加增量)
decrby key offset(减减量)
getrange key startIndex endIndex(得索引的子字符串)
setrange key offsetIndex value(覆盖值)
setex key seconds value(生存时间)
setnx key value(没有设值)
setnx 是 set if not exists 的简写,如果key不存在,则 set 值,存在则不设置值。
mset key value [key value…](多设)
mget key [key …](多得)
msetnx key value[key value…](没有多设)
同时设置一个或多个 key-value 对,如果有一个key是存在的,则设置不成功。
2.2 list⭐⭐⭐
Redis列表是简单的字符串列表,按照插入顺序排序,元素可以重复。你可以添加一个元素到列表的头部(左边)或者尾部(右边),底层是个链表结构。
lpush key value [value…](左设值)
将一个或多个值 value 插入到列表 key 的最左边(表头),各个value值依次插入到表头位置。
返回值:插入之后的列表的长度。
rpush key value [value…](右设值)
lrange key startIndex endIndex(范围取值)
lpop key(左弹值)
rpop key(右弹值)
lindex key index(查询元素)
获取列表 key 中下标为指定 index 的元素,列表元素不删除,只是查询。0 表示列表的第一个元素,1
表示列表的第二个元素;index也可以负数的下标, -1 表示列表的最后一个元素, -2 表示列表的倒数第二个元素,以此类推。
llen key(获取值的长度,个数)
lrem key count value(删除)
根据参数 count 的值,移除列表中与参数 value 相等的元素,
count >0 ,从列表的左侧向右开始移除;
count < 0, 从列表的尾部开始移除;
count = 0,移除表中所有与 value 相等的值。
ltrim key startIndex endIndex(截取覆盖)
lset key index value(单设值)
linsert key before/after pivot value(pivot之前/后插入)
2.3 set⭐⭐⭐
string类型无序无重复集合
sadd key member [member…](添加)
smembers key(显示所有)
sismember key member(单值是否存在)
scard key(显示个数)
srem key member [member…](删除元素)
srandmember key[count](随机返回count个元素)
spop key[count](随机删除count个)
smove src dest member(member从scr移到dest)
sdiff key key [key…](作差)
功能:返回指定集合的差集,以第一个集合为准进行比较,即第一个集合中有但在其它任何集合中都没有的元素组成的集合。
返回值:返回第一个集合中有而后边集合中都没有的元素组成的集合,如果第一个集合中的元素在后边集合中都有则返回空集合。
sinter key key [key…](交集)
sunion key key [key…](并集)
2.4 hash⭐⭐⭐
string类型的field和value的映射表,hash特别适合用于存储对象。
hset key field value [field value …](存键值对)
hget key field(拿值)
hmset key field value [field value…](设值覆盖)
功能:同时将多个 field-value (域-值)设置到哈希表 key
中,此命令会覆盖已经存在的field,hash表key不存在,创建空的hash表,再执行hmset.
hmget key field [field…](获取多值)
hgetall key(获取所有域和值)
hdel key field [field…](删除指定域)
hlen key(域个数)
hexists key field(域是否存在)
hkeys key(所有域列表)
hvals key(所有值列表)
hincrby key field int(域中增int)
hincrbyfloat key field float(域中增float)
hsetnx key field value(没有时初始化)
功能:将哈希表 key 中的域 field 的值设置为 value ,当且仅当域 field 不存在的时候才设置,否则不设置。
返回值:设值成功返回1,其他返回0.
2.5 zset⭐⭐⭐
Redis 有序集合zset和集合set一样也是string类型元素的集合,且不允许重复的成员。
不同的是zset的每个元素都会关联一个分数(分数可以重复),redis通过分数来为集合中的成员进行从小到大的排序。
zadd key score member [score member…](添加)
zrange key startIndex endIndex [WITHSCORES](索引范围查询)
功能:查询有序集合,指定区间的内的元素。集合成员按score值从小到大来排序;startIndex和endIndex都是从0开始表示第一个元素,1表示第二个元素,以此类推;
startIndex和endIndex都可以取负数,表示从后往前取,-1表示倒数第一个元素;WITHSCORES选项让score和value一同返回。
zrangebyscore key min max [WITHSCORES ] [LIMIT offset count](分数范围查询)
1.获取有序集 key 中,所有 score 值介于 min 和 max 之间(包括min和max)的成员,有序成员是按递增(从小到大)排序;
2.使用符号”(“ 表示包括min但不包括max; withscores 显示score和 value;
3.limit用来限制返回结果的数量和区间,在结果集中从第offset个开始,取count个。
zrem key member [member…](删除)
zcard key(个数)
zcount key min max(分数内个数)
zrank key member(单值排名)
获取有序集 key 中成员 member 的排名,有序集成员按 score 值从小到大顺序排列,从0开始排名,score最小的是0 。
zscore key member(单值分数)
zrevrank key member(倒序排名)
功能:获取有序集 key 中成员 member 的排名,有序集成员按 score 值从大到小顺序排列,从0开始排名,score最大的是0
zrevrange key startIndex endIndex [WITHSCORES](范围倒叙取值)
功能:查询有序集合,指定区间的内的元素。集合成员按score值从大到小来排序;startIndex和endIndex都是从0开始表示第一个元素,1表示第二个元素,以此类推;
startIndex和endIndex都可以取负数,表示从后往前取,-1表示倒数第一个元素;WITHSCORES选项让score和value一同返回。
返回值:指定区间的成员组成的集合。
zrevrangebyscore key max min [WITHSCORES ] [LIMIT offset count](分数范围倒叙取值)
功能:获取有序集 key 中,所有 score 值介于 max 和 min之间(包括max和min)的成员,有序成员是按递减(从大到小)排序;
使用符号”(“ 表示不包括min和max;
withscores 显示score和 value;
limit用来限制返回结果的数量和区间,在结果集中从第offset个开始,取count个。
2.6 操作key⭐⭐⭐
keys pattern(查找key)
查找所有符合模式pattern的key. pattern可以使用通配符。
通配符:
- *:表示0或多个字符,例如:keys * 查询所有的key。
- ?:表示单个字符,例如:wo?d , 匹配 word , wood
- [] :表示选择[]内的一个字符,例如wo[or]d, 匹配word, wood, 不匹配wold、woord
exists key [key…](判断key是否存在)
move key db(移动key到指定数据库,原库被删除。)
ttl key(查看key的剩余生存时间,秒为单位。)
(ttl: time to live)
expire key seconds(设key的生存时间,超过时间自动删除。秒。)
type key(查看key的数据类型)
- none (key不存在)
- string (字符串)
- list (列表)
- set (集合)
- zset (有序集)
- hash (哈希表)
rename key newkey(将key改为名newkey)
- 当 key 和 newkey 相同,或者 key 不存在时,返回一个错误。
- 当 newkey 已经存在时, RENAME 命令将覆盖旧值。