> 文章列表 > Redis 常用基本命令

Redis 常用基本命令

Redis 常用基本命令

关于 redis 的常用基本命令

目录

关于 redis 的常用基本命令

1. 关于 key 的操作

2. HyperLogLog 求近似基数

3. 排序相关命令

4. Limit 限制查询


1. 关于 key 的操作

  判断某个 key 是否存在

# 格式: exists key
exists name# 存在name 返回1
# 不存在name 返回0

  查找或者正则匹配某个 key

# 查找key=s,完全一致匹配
keys s
# 查找以s开头,外加任意一个字符的key
keys s?
# 查找以s开头,外加任意或0个字符的key
keys s*# ?: 代表任意一个字符
# *: 代表0个或多个任意字符

  重命名 key

# key: 旧键名 newkey: 新键名
rename key newkey  # 若newkey已经存在,则newkey会被覆盖renamenx key newkey  # 若newkey已经存在,则返回0,不执行该命令

  删除key-value

# key-value 同时被删除
del key

  查看键剩余生存时间

# 以秒为单位返回剩余生存时间
ttl key# 以毫秒为单位返回剩余生存时间
pttl key# return -2: key不存在
# return -1: key存在但未设置生存时间

  设置键的生存时间

# 以秒为时间单位设置key的生存时间
expire key seconds
# 以毫秒为单位设置key的生存时间
pexpire key milliseconds# 设置键永不过期
persist key

  以树形结构存储 key,格式为 -> 项目名:模块名:ID

# 格式: set key:id value
set person:1 zhangsanset person:2 lisiset person:3 wangwu

2. HyperLogLog 求近似基数

  • 基数计数: 统计一个集合中不重复元素的个数,如网站的unique vistor,用户搜索关键词的数量等
  • 近似基数并非实际基数,有可能比实际基数大一点或者小一点,但是这个误差在一个合理的范围内
  • HyperLogLog 求近似基数与实际集合的大小无关,无论集合大还是小,HyperLogLog所需的内存大小都是固定的,且消耗较少的
  • 在其他统计基数的场景里,集合元素的数量和统计所需内存的消耗是成正比的,但是在redis对象里的 HyperLogLog 只需要12kb的内存就能计算2^64个元素集合的基数

相关命令

  添加键值对到 HyperLogLog 对象中

# 格式: pfadd key value value...
pfadd site u1 u2 u3 u4 u5 u6

  根据 key 统计基数

# 格式: pfcount key key...pfcount site

3. 排序相关命令

通过排序命令可以对列表List,集合Set,有序集合Zset进行升序或降序排列

数据操作方式

  数字列表排序

# 基于头部插入-构建列表 List
lpush score 12 45 67 98 2 54 10 36# asc: 升序 desc: 降序
sort score asc

  字符串列表排序

# 基于尾部构建字符串列表
rpush name hutao ganyu leishen keli# 字符串列表排序要加上 alpha
sort name alpha desc

4. Limit 限制查询

某些时候不需要全部的查询结果,可以用 limit 限制返回查询结果的个数

# 基于头部插入-构建列表 List
lpush score 12 45 67 98 2 54 10 36# asc: 升序 desc: 降序
sort score asc limit 5 7# 语法格式 limit offset count
# offset: 偏移量,表示跳过的有序元素个数
# count: 表示本次查询的数据量个数