Redis 常用的命令有哪些?

举报
Xxy_1008 发表于 2024/10/30 10:00:54 2024/10/30
【摘要】 键(Key)操作命令SET 和 GETSET:用于设置键值对。例如:SET mykey "Hello Redis",这将创建一个名为mykey的键,并将其值设置为Hello Redis。GET:用于获取指定键的值。如GET mykey会返回Hello Redis这个值。EXISTS:用于检查给定的键是否存在。例如:EXISTS mykey,如果mykey存在则返回1,不存在返回0。DEL:用...
  1. 键(Key)操作命令
    • SET 和 GET
      • SET:用于设置键值对。例如:SET mykey "Hello Redis",这将创建一个名为mykey的键,并将其值设置为Hello Redis
      • GET:用于获取指定键的值。如GET mykey会返回Hello Redis这个值。
    • EXISTS:用于检查给定的键是否存在。例如:EXISTS mykey,如果mykey存在则返回1,不存在返回0
    • DEL:用于删除一个或多个键。比如DEL mykey会删除名为mykey的键。
    • KEYS:用于查找所有符合给定模式的键。例如:KEYS user:*会返回所有以user:开头的键。不过在生产环境中要谨慎使用,因为它可能会影响性能,尤其是在键数量很多的情况下。
    • TTL(Time To Live)和 PTTL
      • TTL:用于获取键的剩余生存时间(以秒为单位)。例如:TTL mykey,如果mykey设置了过期时间,就会返回剩余的秒数,-1 表示永不过期,-2 表示键不存在。
      • PTTL:和TTL类似,但返回的剩余生存时间是以毫秒为单位。
  2. 字符串(String)操作命令
    • INCR 和 DECR
      • INCR:用于将键对应的值自增 1。例如:SET count 0INCR count后,count的值变为1。它也可以用于对存储的整数进行原子操作,确保在高并发环境下数据的准确性。
      • DECR:与INCR相反,用于将键对应的值自减 1。
    • INCRBY 和 DECRBY
      • INCRBY:用于将键对应的值增加指定的整数。例如:INCRBY score 5会将score的值增加 5。
      • DECRBY:用于将键对应的值减少指定的整数。
    • GETRANGE 和 SETRANGE
      • GETRANGE:用于获取字符串值的子串。例如:SET message "Hello World"GETRANGE message 0 4会返回Hello
      • SETRANGE:用于替换字符串值的部分内容。例如:SETRANGE message 6 "Redis",此时message的值变为Hello Redis
  3. 哈希(Hash)操作命令
    • HSET 和 HGET
      • HSET:用于在哈希表中设置字段和值。例如:HSET user:1 name "John" age 30,这在名为user:1的哈希表中设置了name字段为Johnage字段为30
      • HGET:用于获取哈希表中指定字段的值。如HGET user:1 name会返回John
    • HMSET 和 HMGET
      • HMSET:用于在哈希表中同时设置多个字段和值,是HSET的批量操作版本。例如:HMSET user:2 name "Alice" age 25 email "alice@example.com"
      • HMGET:用于获取哈希表中多个指定字段的值。如HMGET user:2 name age email会返回["Alice", "25", "alice@example.com"]
    • HGETALL:用于获取哈希表中的所有字段和值。例如:HGETALL user:1会返回["name", "John", "age", "30"]
    • HDEL:用于删除哈希表中的一个或多个字段。例如:HDEL user:1 age会删除user:1哈希表中的age字段。
  4. 列表(List)操作命令
    • LPUSH 和 RPUSH
      • LPUSH:用于将一个或多个值插入到列表头部。例如:LPUSH mylist "value1",会将value1插入到mylist列表的头部。
      • RPUSH:用于将一个或多个值插入到列表尾部。
    • LPOP 和 RPOP
      • LPOP:用于从列表头部弹出一个元素。例如:LPOP mylist会删除并返回mylist列表头部的元素。
      • RPOP:用于从列表尾部弹出一个元素。
    • LRANGE:用于获取列表指定范围内的元素。例如:LRANGE mylist 0 -1会返回mylist列表中的所有元素。
  5. 集合(Set)操作命令
    • SADD 和 SMEMBERS
      • SADD:用于向集合中添加一个或多个元素。例如:SADD myset "element1"会将element1添加到myset集合中。
      • SMEMBERS:用于获取集合中的所有元素。如SMEMBERS myset会返回myset集合中的所有元素。
    • SISMEMBER:用于检查一个元素是否属于集合。例如:SISMEMBER myset "element1",如果element1myset集合中则返回1,否则返回0
    • SREM:用于从集合中删除一个或多个元素。例如:SREM myset "element1"会删除element1这个元素。
  6. 有序集合(Sorted Set)操作命令
    • ZADD 和 ZRANGE
      • ZADD:用于向有序集合中添加元素,并指定元素的分数。例如:ZADD myzset 10 "element1"会将element1添加到myzset有序集合中,分数为 10。
      • ZRANGE:用于获取有序集合中指定范围内的元素。例如:ZRANGE myzset 0 -1会按照分数从小到大的顺序返回myzset有序集合中的所有元素。
    • ZREM 和 ZREMRANGEBYRANK
      • ZREM:用于从有序集合中删除一个或多个元素。例如:ZREM myzset "element1"会删除element1这个元素。
      • ZREMRANGEBYRANK:用于删除有序集合中指定排名范围内的元素。例如:ZREMRANGEBYRANK myzset 0 1会删除排名前两位的元素。
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。