redis命令

https://redis.io/docs/latest/commands/redis-8-4-commands/

客户端命令行查看所有一级指令

bash 复制代码
redis-cli --json COMMAND | jq -r '.[][0]'

查询一级指令的详细参数,例如:"hset"

bash 复制代码
redis-cli --json command | jq '.[]|select(.[0]=="hset")'
[
  "hset",
  -4,
  [
    "write",
    "denyoom",
    "fast"
  ],
  1,
  1,
  1,
  [
    "@write",
    "@hash",
    "@fast"
  ],
  [],
  [
    {
      "flags": [
        "RW",
        "update"
      ],
      "begin_search": {
        "type": "index",
        "spec": {
          "index": 1
        }
      },
      "find_keys": {
        "type": "range",
        "spec": {
          "lastkey": 0,
          "keystep": 1,
          "limit": 0
        }
      }
    }
  ],
  []
]

jq命令语法

bash 复制代码
.                    当前节点
.foo                 取字段
.foo.bar             多级
["foo"]              字段名带特殊字符时用
[]                   展开数组
[n]                  第 n 个
[n:m]                切片
|                    管道,把左边结果喂给右边
select(EXPR)         过滤
map(EXPR)            数组每个元素应用 EXPR
add/max/min/length   常用聚合
keys                 取对象键名数组
@text / @json / @csv 输出格式化

命令实例

位操作省略

set key value

mset key value key value .....

setnx key value

get key

mget key .....

incr key

incrby key increment

decr key

decrby key increment

incrbyfloat key increment

append key value

strlen key

del key

hash数据操作

hset key faild value #设置字段值

HMSET key field1 value1 field2 value2 #一次设置多个字段值

hget key faild #获取字段值

hgetall key #获取所有字段值

HMGET key field field #一次获取多个字段

hexists key field #判断某个字段是否存在

hsetnx key field #某个字段不存在则赋值

hincrby key field crement #某个字段增加多少

hdel key field [field ...] #删除字段

hkeys key #列出所有字段

hvals key #列出所有字段值

hlen key #hash长度

列列表数据操作

LPUSH key value [value ...] #向列表左边增加值

RPUSH key value [value ...] #向列表右边增加值

LPOP key #从左边移除一个值

RPOP key #从右边移除一个值

llen key #获取链表长度

lrem key count value #删除值为value的节点,删除方式根据count的值确定。=0删除所有value,>0从左开始删除count个,<0从右开始删除count个。

lindex key index #返回指定索引处的值

lset key index value #更新index索引的值

ltrim key start end #只保留指定片段

linsert key before|after pivot value #在指定值的前|后插值,只插一个值

rpoplpush source destination #将元素从一个链表转移到另外一个链表

集合类型操作

SADD key member [member ...] #添加元素

SREM key member [member ...] #删除元素

smembers key #查看所有元素

sismember key member #集合是否存在member

sdiff key [key .... ] #求集合的差集

sinter key [key ...] #求集合的交集

sunion key [key ...] #求集合的并集

scard key #获取集合元素个数

SDIFFSTORE destination key [key ...] #差集并存储

SINTERSTORE destination key [key ...] #交集并存储

SUNIONSTORE destination key [key ...] #并集并存储

srandmember key [count] #随机获取元素

spop key #随机弹出一个元素

有序集合数据操作

ZADD key score member [score member ...] #增加元素

ZSCORE key member #获取元素分数

ZRANGE key start stop [WITHSCORES] #获取某个范围内的元素列表

ZREVRANGE key start stop [WITHSCORES] #获取某个范围内的元素列表-倒序

ZRANGEBYSCORE key min max [WITHSCORES] [LIMIT offset count] #获取指定分数范围内的元素

zrevrangebyscore key max min [WITHSCORES] [LIMIT offset count] #获取指定分数范围内的元素-倒序

ZINCRBY key increment member #增加某个元素的分数

ZCARD key #获取集合中元素的数量

ZCOUNT key min max #获取指定分数范围内元素个数

ZREM key member [member ...] #删除一个或者多个元素

ZREMRANGEBYRANK key start stop # 按排名范围删除元素

ZREMRANGEBYSCORE key min max # 按分数范围删除元素

ZRANK key member #获得元素的位置

ZREVRANK key member #获得元素的位置-倒序

ZINTERSTORE destination numkeys key [key ...] [WEIGHTS weight [weight ...]] [AGGREGATE SUM|MIN|MAX] #计算有序集合的交集

流类型

XADD key [MAXLEN [=|~] threshold] *|ID field value [field value ...] #增加条目

XRANGE key start end [COUNT count] #查询id范围内的条目

XDEL key ID [ID...] #删除指定元素

XTRIM key MAXLEN [=|~] threshold #剪裁流

XLEN key #获取流的长度

XREVRANGE key end start [COUNT count] #查询id范围内的条目-倒序

相关推荐
t***44236 小时前
MySQL 导出数据
数据库·mysql·adb
翔云1234566 小时前
MySQL主从库复制中,主库如何查找对应日志文件位置
数据库·mysql
Mr_star_galaxy7 小时前
【MySQL基础】视图和权限管理
数据库·mysql
lipiaoshuigood8 小时前
MySQL 数据出海之数据同步方案
数据库·mysql
笨蛋不要掉眼泪9 小时前
Nacos配置中心详解:核心用法、动态刷新与经典面试题解析
java·数据库·后端
@@神农9 小时前
PostgreSQL-SQL语句的执行过程(一)
数据库·sql·postgresql
Andy Dennis10 小时前
一文漫谈数据库存储之索引(B+, B-link, LSM tree等)
数据库·b+树·lsm-tree
王解10 小时前
AI Agent记忆模块进化史:从临时缓存到认知架构的设计范式
人工智能·缓存·架构
CHANG_THE_WORLD10 小时前
字符串定义的汇编分析
汇编·数据库
数据知道11 小时前
PostgreSQL:如何通过progres_fdw跨库关联查询?
数据库·postgresql