Redis 维表 Join

具体 JOIN 语法如下:

  1. SELECT {<other_view_name>.<column_name> [AS <alias_name>]}[, ...n],
  2. `GET`.v
  3. FROM <other_view_name>
  4. LEFT JOIN <redis_catalog_name>.`default`.`GET`
  5. FOR SYSTEM_TIME AS OF <other_view_name>.<proctime_column_name>
  6. ON <other_view_name>.<column_name> = `GET`.k;

跟 JDBC 维表 JOI N的语法相比,redis 维表 JOIN 的语法简单的多,这是因为我们将底层的逻辑都进行了封装,让用户更易用。下面依旧上例子:

  1. SELECT V3.proctime,V3.id, V3.os, V3.seqno,
  2. `GET`.v
  3. FROM V3
  4. LEFT JOIN redis_95_test.`default`.`GET`
  5. FOR SYSTEM_TIME AS OF V3.proctime
  6. ON V3.id = `GET`.k;

这里用户也会有一个困惑的点,就是不知道自己需要的”redis_catalog_name”怎样获取,具体途径如下:

  1. 在 SQL 编辑页面的最上层,找到”数仓”TAB并点击(点击前一定要先保存已经完成的 SQL)

  2. 在出现的页面中,在左侧菜单栏中找到”数据源登记”并点击

  3. 在出现的页面中找到”类型”下拉选择框,选择”redis_cluster”并点击”查询”

  4. 在出现的列表中一个一个点击编辑查看是否是自己需要的redis集群,如果是,则把对应的名称复制。这个名称就是SQL语法中需要的redis_catalog_name

  5. 如果没有找到需要的redis,则在实时群里找值班同学帮助解决