通用命令
- 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面試寶典》?