JDBC 维表 Join
更新时间: 2021-08-26 20:42:29
阅读 485
JDBC 维表 Join
具体JOIN语法:
SELECT {<other_view_name>.<column_name> [AS <alias_name>]}[, ...n],
{<jdbc_table_name>.<column_name> [AS <alias_name>]}[, ...n]
FROM <other_view_name>
LEFT JOIN <jdbc_catalog_name>.<jdbc_db_name>.<jdbc_table_name>
FOR SYSTEM_TIME AS OF <other_view_name>.<proctime_column_name>
ON {<other_view_name>.<column_name> = <jdbc_table_name>.<column_name>}[AND ...n];
以上基本语法从字面意思可以看到大概写法,接下来我们给出一个具体例子加以说明:
SELECT V3.groupId,
V3.resourceId AS resource,
V3.changeType,
V3.status,
V3.userId,
Music_Mlog.id,
Music_Mlog.`type` as tt_type,
Music_Mlog.content,
Music_Mlog.updateTime,
Music_Mlog.location,
Music_Mlog.talkId
FROM V3
LEFT JOIN `user_social`.`music_usersocial_bj_dp`.`Music_Mlog` FOR SYSTEM_TIME AS OF V3.proctime
ON V3.resourceId = Music_Mlog.id;
[V3 对应语法中 other_view_name]
[resource 对应语法中 alias_name]
[Music_Mlog 对应语法中 jdbc_table_name]
[user_social 对应语法中 jdbc_catalog_name]
[music_usersocial_bj_dp 对应语法中 jdbc_db_name]
[proctime 对应语法中 proctime_column_name]
这里特别说明下,一般时间这个字段是在 other_view_name 中用 PROCTIME() as proctime 定义。
根据例子,我们就能很容易对应上 JDBC 维表 JOIN 的写法。语法中将需要替换的部分替换后,其余语法按照语法定义中照搬即可。
这里,用户比较困惑的点应该是怎样去找到语法中 “..”这部分的写法。具体方法如下:
在 SQL 编辑页面的右上角找到一个叫”外部数据”的 tab 并点击 在弹出的页面中”类型”选择 “ddb” 接下来页面会出现”表名”和”catalog”两行内容 将你需要 JOIN 的 dd b表名复制进去,然后点击”生成SQL” 在生成的 SQ L中,将”INSERT INTO” 和 “SELECT” 之间的字符复制出来即可 如果没有找到相应的 ddb 表,则实时群里找值班同学协助解决。
文档反馈
以上内容对您是否有帮助?