Redis的常用命令
SET key value:设置键的值。GET key:获取键的值。DEL key:删除键。INCR key:将键的值加1。APPEND key value:将值追加到键的值后面。HSET key field value:在哈希中设置字段的值。HGET key field:获取哈希中字段的值。HDEL key field:删除哈希中的字段。HGETALL key:获取哈希中的所有字段值。HKEYS
Sting 类型
-
SET命令:将指定的key设置为指定的值
- 用法:SET key value [EX seconds] [PX milliseconds] [NX|XX]
- 示例:SET name "John" // 将key为name的值设置为"John"
解释:SET命令用于在Redis中设置指定key的值。如果key已经存在,则会覆盖原来的值;如果key不存在,则会创建一个新的key-value对。该命令还可以设置key的过期时间、设置key不存在时才进行操作的条件等。
-
GET命令:获取指定key的值
- 用法:GET key
- 示例:GET name // 获取key为name的值
解释:GET命令用于在Redis中获取指定key的值。如果key不存在,则返回nil。
-
INCR命令:将指定key的值增加1
- 用法:INCR key
- 示例:SET count 10; INCR count // 将key为count的值增加1,结果为11
解释:INCR命令用于对key的值进行自增操作。如果key不存在,则会将其值设置为1。
-
DECR命令:将指定key的值减少1
- 用法:DECR key
- 示例:SET count 10; DECR count // 将key为count的值减少1,结果为9
解释:DECR命令用于对key的值进行自减操作。如果key不存在,则会将其值设置为-1。
-
APPEND命令:将指定的值追加到指定key的末尾
- 用法:APPEND key value
- 示例:SET message "Hello"; APPEND message ", World!" // 将", World!"追加到key为message的值的末尾
解释:APPEND命令用于将指定的值追加到指定key的末尾,返回追加后的字符串的长度。
-
STRLEN命令:获取指定key的值的长度
- 用法:STRLEN key
- 示例:SET message "Hello"; STRLEN message // 获取key为message的值的长度,结果为5
解释:STRLEN命令用于获取指定key的值的长度。如果key不存在,则返回0。
-
SETEX命令:将指定key设置为指定的值,并设置过期时间
- 用法:SETEX key seconds value
- 示例:SETEX token 3600 "abcd1234" // 将key为token的值设置为"abcd1234",并设置过期时间为3600秒
解释:SETEX命令用于在Redis中设置指定key的值,并设置过期时间。过期时间单位为秒。
-
MSET命令:同时设置多个key的值
- 用法:MSET key1 value1 [key2 value2 ...]
- 示例:MSET username "John" age 30 // 同时设置key为username的值为"John"和key为age的值为30
解释:MSET命令用于同时设置多个key的值。可以一次性设置多个key-value对。
-
MGET命令:同时获取多个key的值
- 用法:MGET key1 [key2 ...]
- 示例:MGET username age // 获取key为username的值和key为age的值
解释:MGET命令用于同时获取多个key的值。返回一个包含所有key对应值的列表。
-
EXPIRE命令:设置key的过期时间
- 用法:EXPIRE key seconds
- 示例:EXPIRE username 3600 // 设置key为username的过期时间为3600秒
解释:EXPIRE命令用于设置key的过期时间,单位为秒。设置后,经过指定的秒数后,key将自动删除。
hash
-
HSET命令
- 用途:设置hash中指定字段的值,如果字段不存在,则创建字段并设置值。
- 示例:HSET myhash field1 value1
- 在名为myhash的hash中,创建或更新字段field1,并设置为value1。
-
HGET命令
- 用途:获取hash中指定字段的值。
- 示例:HGET myhash field1
- 获取名为myhash的hash中字段field1的值。
-
HGETALL命令
- 用途:获取hash中所有字段和值。
- 示例:HGETALL myhash
- 获取名为myhash的hash中所有字段和值。
-
HDEL命令
- 用途:删除hash中的指定字段。
- 示例:HDEL myhash field1
- 删除名为myhash的hash中的字段field1。
-
HEXISTS命令
- 用途:检查hash中是否存在指定字段。
- 示例:HEXISTS myhash field1
- 检查名为myhash的hash中是否存在字段field1。
-
HKEYS命令
- 用途:获取hash中所有字段的列表。
- 示例:HKEYS myhash
- 获取名为myhash的hash中所有字段的列表。
-
HVALS命令
- 用途:获取hash中所有字段的值的列表。
- 示例:HVALS myhash
- 获取名为myhash的hash中所有字段的值的列表。
-
HLEN命令
- 用途:获取hash中字段的数量。
- 示例:HLEN myhash
- 获取名为myhash的hash中字段的数量。
-
HMSET命令
- 用途:设置hash中多个字段的值。
- 示例:HMSET myhash field1 value1 field2 value2
- 在名为myhash的hash中,设置字段field1的值为value1,字段field2的值为value2。
-
HMGET命令
- 用途:获取hash中多个字段的值。
- 示例:HMGET myhash field1 field2
- 获取名为myhash的hash中字段field1和field2的值。
List
-
LPUSH:将一个或多个值插入列表的头部
- 格式:LPUSH key value1 [value2 ...]
- 示例:LPUSH mylist "hello",将值"hello"插入名为mylist的列表的头部
-
RPUSH:将一个或多个值插入列表的尾部
- 格式:RPUSH key value1 [value2 ...]
- 示例:RPUSH mylist "world",将值"world"插入名为mylist的列表的尾部
-
LPOP:移除并返回列表的头部元素
- 格式:LPOP key
- 示例:LPOP mylist,从名为mylist的列表的头部移除并返回元素
-
RPOP:移除并返回列表的尾部元素
- 格式:RPOP key
- 示例:RPOP mylist,从名为mylist的列表的尾部移除并返回元素
-
LLEN:获取列表的长度
- 格式:LLEN key
- 示例:LLEN mylist,获取名为mylist的列表的长度
-
LRANGE:获取列表指定范围内的元素
- 格式:LRANGE key start stop
- 示例:LRANGE mylist 0 2,获取名为mylist的列表中索引从0到2的元素
-
LINDEX:获取列表指定索引位置的元素
- 格式:LINDEX key index
- 示例:LINDEX mylist 1,获取名为mylist的列表中索引为1的元素
-
LREM:从列表中删除指定数量的某个元素
- 格式:LREM key count value
- 示例:LREM mylist 2 "hello",从名为mylist的列表中删除2个值为"hello"的元素
-
LSET:设置列表中指定索引位置的元素的值
- 格式:LSET key index value
- 示例:LSET mylist 1 "world",将名为mylist的列表中索引为1的元素值设置为"world"
-
LINSERT:在列表中指定元素的前面或后面插入一个新元素
- 格式:LINSERT key [BEFORE|AFTER] pivot value
- 示例:LINSERT mylist BEFORE "world" "hello",在名为mylist的列表中值为"world"的元素前面插入新元素"hello"
Redis事务命令
-
MULTI命令:表示事务开始,用于标记一个事务的起始点。 示例:
MULTI SET key1 value1 SET key2 value2 EXEC
解释:MULTI命令用于开启事务,之后所有的命令都会被缓存起来,直到EXEC命令被调用才会被执行。
-
EXEC命令:表示事务执行,用于执行事务中缓存的命令。 示例:
MULTI SET key1 value1 SET key2 value2 EXEC
解释:EXEC命令会执行MULTI命令之后缓存的所有命令。
-
DISCARD命令:表示事务取消,用于取消事务的执行并清空事务队列。 示例:
MULTI SET key1 value1 DISCARD
解释:DISCARD命令会取消事务的执行,并清空事务队列,事务中的所有操作都将被忽略。
-
WATCH命令:用于在事务执行前监视给定的键,如果键在事务执行期间被修改,事务将发生中断。 示例:
WATCH key1 MULTI SET key1 value1 EXEC
解释:WATCH命令用于监视键key1,如果在EXEC执行之前key1被修改,则事务会被中断。
总结
-
字符串命令:
- SET key value:设置键的值。
- GET key:获取键的值。
- DEL key:删除键。
- INCR key:将键的值加1。
- APPEND key value:将值追加到键的值后面。
-
哈希命令:
- HSET key field value:在哈希中设置字段的值。
- HGET key field:获取哈希中字段的值。
- HDEL key field:删除哈希中的字段。
- HGETALL key:获取哈希中的所有字段值。
- HKEYS key:获取哈希中的所有字段。
-
列表命令:
- LPUSH key value:将值推入列表的左侧。
- RPUSH key value:将值推入列表的右侧。
- LPOP key:从列表的左侧弹出一个值。
- RPOP key:从列表的右侧弹出一个值。
- LRANGE key start stop:获取列表中指定范围的值。
-
集合命令:
- SADD key member:将成员添加到集合中。
- SREM key member:从集合中移除成员。
- SMEMBERS key:获取集合中的所有成员。
- SINTER key1 key2:获取两个集合的交集。
- SISMEMBER key member:检查成员是否在集合中。
-
有序集合命令:
- ZADD key score member:将成员添加到有序集合中。
- ZREM key member:从有序集合中移除成员。
- ZRANGE key start stop:获取有序集合中指定范围的成员。
- ZRANK key member:获取成员在有序集合中的排名。
- ZSCORE key member:获取成员在有序集合中的分数。
-
其他命令:
- SELECT index:选择数据库。
- EXPIRE key seconds:设置键的过期时间。
- TTL key:获取键的剩余过期时间。
- SAVE:将数据保存到磁盘。
- FLUSHALL:清空所有数据库。
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)