Redis中的常用操作命令

x33g5p2x  于2021-11-22 转载在 Redis  
字(3.0k)|赞(0)|评价(0)|浏览(455)

以下连接是 Redis Command Reference 和 Redis Documentation 的中文翻译文档, 阅读这个文档可以帮助你了解 Redis 命令的具体使用方法, 并学会如何使用 Redis 的事务、持久化、复制、Sentinel、集群等功能
redis使用手册

一、关于key的操作命令

查看数据库实例中的key:

  • keys [pattern]
    pattern可以是具体的字符串也可以使用通配符
    例:
    查看当前数据库实例中的所有key
    keys *
    查看当前数据库实例中的以h开头的key
    keys h*
    查看当前数据库实例中的以h开头以o结尾并且中间只有一个字符的key
    keys h?o

关于通配符:

  • ?匹配一个字符
    • 匹配任意个字符
  • [ ] 匹配[ ]任意一个字符

判断数据库实例中是否存在key:

  • exist key
  • exist key [key key …]

移动key到指定数据库实例:

  • move key index

设置key的最大生存时间

  • expire key second

查看key的剩余生存时间

  • ttl key
    返回值:-2代表key不存在,-1代表没有设置生存使时间

查看key的数据类型

  • type key

重命名key

  • rename key newkey

删除key

  • del key

二、关于string类型的数据的操作命令

string类型的数据是单个key对应单个value

将string类型的数据设置到redis中

  • set key value
  • mset key1 value1 [key2 value2 …] (批量设置)
  • setnx key value(只有key不存在时才能设置成功)
  • setex key second value(设置的同时设置最大生存时间)
  • msetnx key1 value1 [key2 value2 …] (只要有一个key存在就放弃设置)

获取string类型的数据

  • get key
  • mget key1 [key2 key3 …](批量获取)

将字符串追加到指定key中

  • append key value

获取指定key的字符串长度

  • strlen key

将指定key的字符串数值进行加一运算(key所表示的value必须是数值)

  • incr key
  • decr key(减一)

将指定key的字符串数值进行加x运算

  • incrby key x
  • decrby key x(减x)

获取指定key的指定下标区间的子字符串

  • getrange key startIndex endIndex
    正下标表示从左到右从0开始,负小标表示从右向左从-1开始
    例:
    getrange key 0 -1 全部字符串

修改指定key的子字符串用value覆盖从下标startIndex开始的字符串

  • setrange key startIndex value

三、关于list类型的数据的操作命令

list类型的数据是单个key对应多个value且value有序

将一个或多个元素依次插入列表的表头

  • lpush key value1 [value2 value3…]
  • rpush key value1 [value2 value3…] (插入到表尾)
    例:
    lpush key a b c 结果>> c b a
    rpush key a b c 结果>> a b c

获取指定列表中指定下标区间的元素

  • lrange key startIndex endIndex

从指定列表中移除表头元素并返回

  • lpop key
  • rpop key (表尾)

获取指定列表的指定下标元素

  • lindex key index

获取指定列表的长度

  • llen key

移除列表中与value相同的数据

  • lrem key count value
    count>0从左侧移除count个元素
    count<0从右侧移除count个元素
    count=0移除所有与value相同元素

返回截取指定下标区间组成新列表

  • ltrim key startIndex endIndex

将指定列表的指定下标元素设置指定值

  • lset key index value

将value插入到指定列表中位于pivot(元素)之前的位置

  • linsert key before pivot value
  • linsert key after pivot value (之后)

四、关于set类型的数据的操作命令

set类型的数据是单个key对应多个无序value 元素不重复
将一个或多个元素添加到集合中

  • sadd key member1 [member2 …]

查看集合中的元素

  • smembers key

判断元素在集合中是否存在

  • sismember key member (1存在 0不存在)

获取集合中元素的个数

  • scard key

随机获取集合中count个元素

  • srandmember count key(count>0 不重复 count<0可能重复)
  • srandmember key (获取一个)

从指定集合中随机移除count个元素

  • spop key count

将指定元素移动到另外一个集合

  • smove key1 key2 member

返回一个集合中有而其他集合中都没有的元素的集合(差集)

  • sdiff key1 key2 key3 …

获取所有集合中都有元素组成的集合(交集)

  • sinter key1 key2 key3 …

获取所有集合中所有元素组成的集合(并集)

  • sunion key1 key2 key3 …

五、关于hash类型的数据的操作命令

hash类型的数据是单个key对应多个field-value对

将一个或多个field-value设置到指定哈希表中

  • hset key field value
  • hmset key field1 value1 [field2 value2…](批量设置)
  • hsetnx key field value (当key-field不存在才设置)

获取指定哈希表中指定field的值

  • hget key field
  • hmget key field1 [field2 …] (批量获取)

从指定哈希表中删除一个或多个field

  • hdel key field1 [field2 …]

获取指定哈希表中field的个数

  • hlen key

判断指定哈希表中是否存在某个field

  • hexists key field

获取指定哈希表中所有的field和value

  • hgetall key

获取指定哈希表中所有的field

  • hkeys key

获取指定哈希表中所有的value

  • hvals key

对指定哈希表的指定field进行加法运算

  • hincrby key field int (整数)
  • hincrbyfloat key field float (小数)

六、关于zset类型的数据的操作命令

zset类型的数据是单个key对应多个有序value(根据参考值score排序,zset有下标不重复)

将一个或多个元素及其score值设置到有序集合中

  • zadd key score1 member1 [score2 member2 …] (score必须是数值)

获取指定有序集合中指定下标区间的元素

  • zrange key startIndex endIndex [withscore] (加上withscore显示score)

获取指定有序集合中指定score区间的元素

  • zrangebyscore key min max [withscore]

删除指定有序集合中一个或多个元素

  • zrem key member1 [member2 …]

获取指定有序集合中所有元素个个数

  • zcard key

获取指定有序集合中指定score区间元素的个数

  • zcount key min max

获取指定有序集合中指定元素的排名

  • zrank key member(从小到大)
  • zrevrank key member(从大到小)

获取指定有序集合中指定元素的score

  • zscore key member

相关文章