Redis 维表 Join

具体 JOIN 语法如下:

SELECT {<other_view_name>.<column_name> [AS <alias_name>]}[, ...n],

`GET`.v 

FROM  <other_view_name>  

LEFT JOIN  <redis_catalog_name>.`default`.`GET`   

FOR SYSTEM_TIME AS OF <other_view_name>.<proctime_column_name> 

ON <other_view_name>.<column_name> = `GET`.k;

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

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

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

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

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

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

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

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