通用命令
- KEYS pattern:查找所有符合给定模式(pattern)的 key。
- EXISTS key:检查指定 key 是否存在。
- TYPE key:返回指定 key 的数据类型。
- DEL key [key …]:删除指定的 key。
- RENAME key newkey:将 key 重命名为 newkey。
- EXPIRE key seconds:设置 key 的过期时间(单位为秒)。
- TTL key:获取 key 的剩余生存时间(以秒为单位)。
- PERSIST key:移除 key 的过期时间,使其永远有效。
- FLUSHDB:删除当前数据库中的所有 key。
- FLUSHALL:删除所有数据库中的所有 key。
- DBSIZE:返回当前数据库中 key 的数量。
- INFO [section]:获取 Redis 服务器的各种信息和统计数据。
- SCAN cursor [MATCH pattern] [COUNT count]:增量式迭代 key 集合。
String
- SET key value:设置指定 key 的值为指定 value。
- GET key:获取指定 key 的值。
- DEL key:删除指定 key。
- INCR key:将指定 key 存储的值加一。
- DECR key:将指定 key 存储的值减一。
- INCRBY key increment:将指定 key 存储的值加上指定的增量 increment。
- DECRBY key decrement:将指定 key 存储的值减去指定的减量 decrement。
- APPEND key value:将指定值追加到指定 key 原有值的末尾。
- STRLEN key:返回指定 key 值的长度。
- SETEX key seconds value:设置指定 key 的值,并指定过期时间(单位为秒)。
- SETNX key value:设置指定 key 的值,仅在 key 不存在时有效。
- GETSET key value:设置指定 key 的值,并返回 key 的旧值。
- MSET key value [key value …]:同时设置多个 key-value 对。
- MGET key [key …]:同时获取多个 key 的值。
List
- LPUSH key value [value …]:将一个或多个值从左侧插入到列表中。
- RPUSH key value [value …]:将一个或多个值从右侧插入到列表中。
- LPOP key:移出并获取列表的第一个元素。
- RPOP key:移出并获取列表的最后一个元素。
- LINDEX key index:获取列表中指定索引位置的元素。
- LLEN key:获取列表的长度。
- LRANGE key start stop:获取列表中指定范围内的元素。
- LSET key index value:设置列表中指定索引位置的元素的值。
- LINSERT key BEFORE|AFTER pivot value:用于在列表中指定元素的前面或后面插入一个新元素。
- LTRIM key start stop:保留列表中指定范围内的元素,其他元素将被移除。
- LREM key count value:从列表中移除指定数量的与给定值相同的元素。
- RPOPLPUSH source destination:移除列表 source 的最后一个元素,并将其添加到列表 destination 的开头。
Set
- SADD key member [member …]:向集合中添加一个或多个成员。
- SMEMBERS key:返回集合中的所有成员。
- SISMEMBER key member:检查 member 是否是集合 key 的成员。
- SCARD key:获取集合的基数(集合中元素的数量)。
- SREM key member [member …]:从集合中移除一个或多个成员。
- SPOP key [count]:随机地移除并返回集合中的一个或多个成员。
- SRANDMEMBER key [count]:从集合中随机返回一个或多个成员,不会对集合进行修改。
- SUNION key [key …]:返回多个集合的并集。
- SINTER key [key …]:返回多个集合的交集。
- SDIFF key [key …]:返回第一个集合与其他集合之间的差集。
Zset
- ZADD key score member [score member …]:将一个或多个成员元素及其分数值加入到有序集 key 中。
- ZRANGE key start stop [WITHSCORES]:按照索引范围获取有序集合中的成员。
- ZREVRANGE key start stop [WITHSCORES]:按照索引范围的逆序获取有序集合中的成员。
- ZRANK key member:获取指定成员在有序集合中的排名。
- ZREM key member [member …]:从有序集合中移除一个或多个成员。
- ZSCORE key member:获取有序集合中指定成员的分数。
- ZCARD key:获取有序集合的基数(集合中元素的数量)。
- ZCOUNT key min max:计算有序集合中指定分数范围内的成员数量。
- ZINCRBY key increment member:将有序集合中指定成员的分数增加 increment。
- ZINTERSTORE destination numkeys key [key …] [WEIGHTS weight [weight …]] [AGGREGATE SUM|MIN|MAX]:计算多个有序集合的交集,并将结果存储在新的有序集合中。
Hash
- HSET key field value:将哈希表 key 中的字段 field 的值设为 value。
- HGET key field:获取哈希表 key 中字段 field 的值。
- HDEL key field [field …]:删除哈希表 key 中一个或多个字段。
- HEXISTS key field:检查哈希表 key 中是否存在指定的字段。
- HGETALL key:获取哈希表 key 中所有字段和值。
- HKEYS key:获取哈希表 key 中所有字段的名称。
- HVALS key:获取哈希表 key 中所有字段的值。
- HINCRBY key field increment:将哈希表 key 中的字段 field 的值增加 increment。
- HLEN key:获取哈希表 key 中字段的数量。
- HMSET key field value [field value …]:同时将多个 field-value 对设置到哈希表 key 中。
Geospatial
- GEOADD key longitude latitude member [longitude latitude member …]:向指定的键中添加一个或多个地理位置的成员。
- GEOPOS key member [member …]:获取指定成员的地理位置坐标。
- GEODIST key member1 member2 [unit]:计算两个成员之间的距离,默认以米为单位。
- GEORADIUS key longitude latitude radius m|km|ft|mi [WITHCOORD] [WITHDIST] [WITHHASH] [COUNT count] [ASC|DESC] [STORE key] [STOREDIST key]:根据给定的经纬度坐标和半径范围,获取指定键内的地理位置成员。
- GEORADIUSBYMEMBER key member radius m|km|ft|mi [WITHCOORD] [WITHDIST] [WITHHASH] [COUNT count] [ASC|DESC] [STORE key] [STOREDIST key]:根据指定成员以及半径范围,获取指定键内的地理位置成员。
- GEOSCAN key cursor [MATCH pattern] [COUNT count]:迭代遍历指定键中的地理位置成员。
- GEORADIUS_RO key longitude latitude radius m|km|ft|mi [ASC|DESC] [COUNT count]:基于 RTree 实现的基于范围查询的半径查询。
- GEORADIUSBYMEMBER_RO key member radius m|km|ft|mi [ASC|DESC] [COUNT count]:基于 RTree 实现的基于范围查询的指定成员半径查询。
Hyperloglog
- PFADD key element [element …]:将一个或多个元素添加到 HyperLogLog 数据结构中。
- PFCOUNT key [key …]:对多个 HyperLogLog 进行合并并统计基数估计值的总数。
- PFMERGE destkey sourcekey [sourcekey …]:合并多个 HyperLogLog 数据结构。
- PFAEACH key [key …]:返回 HyperLogLog 的基数估计值,用于批量计算多个 HyperLogLog 的基数估计值。
- PFMERGE_RO destkey sourcekey [sourcekey …]:批量合并多个 HyperLogLog 数据结构,返回合并后的基数估计值。
Bitmap
- SETBIT key offset value:设置指定 key 中的指定偏移量上的位的值。
- GETBIT key offset:获取指定 key 中的指定偏移量上的位的值。
- BITOP operation destkey key [key …]:对一个或多个 key 进行位操作,并将结果保存到 destkey。
- BITCOUNT key [start end]:统计指定 key 中指定范围内的位为 1 的数量。
- BITPOS key bit [start] [end]:在指定 key 中寻找第一个设置为指定位的位置。
- BITFIELD key [GET type offset] [SET type offset value]:对指定 key 中的位进行位域操作。
Stream
- XADD key ID field1 value1 field2 value2 ...:向指定 key 的 Stream 中添加一个新的消息。消息会被附加一个唯一的 ID,消息内容可以包含多个字段和对应的数值。
- XLEN key:返回指定 Stream 的长度,即消息数量。
- XRANGE key start end [COUNT count]:返回指定范围内的消息列表,可以指定起始和结束的消息 ID,也可以通过 COUNT 参数指定返回消息的数量。
- XREVRANGE key end start [COUNT count]:返回指定范围内的消息列表,并按照逆序(从小到大)返回消息。
- XREAD [COUNT count] [BLOCK milliseconds] STREAMS key [ID]:从一个或多个 Stream 中读取消息,并可以阻塞指定的时间。
- XREADGROUP GROUP groupname consumername COUNT count STREAMS key [ID]:类似于 XREAD 命令,支持 Consumer Group,可以多个消费组共同消费消息。
- XGROUP CREATE key groupname ID-or-$ [MKSTREAM]:创建一个消费组,用于对 Stream 进行多个消费者的分组消费。
- XACK key groupname ID [ID ...]:确认消费组中一个或多个消息的处理完成,标记为已处理。
- XDEL key ID [ID ...]:从 Stream 中删除指定 ID 的消息。
- XTRIM key MAXLEN [~|+] count:对 Stream 进行修剪,保留最新的指定数量的消息,支持相对位置修剪。
ps:以下是我整理的java面试资料,密码是obht,感兴趣的可以看看。最后,创作不易,觉得写得不错的可以点点关注!
链接:https://www.yuque.com/u39298356/uu4hxh?# 《Java面试宝典》