开发者社区> 问答> 正文

有没有使用flink-sql实现mysql维表的join的ddl和dml的示列的demo能够参考一下

Hi,各位大佬: > > 有没有使用flink-sql实现mysql维表的join的ddl和dml的示列的demo能够参考一下,非常感谢。*来自志愿者整理的flink邮件归档

展开
收起
彗星halation 2021-12-08 10:12:04 807 0
1 条回答
写回答
取消 提交回答
  • mysql 维表的 DDL 和 源表/结果表 的 DDL 是一样的。 例如下面这个 DDL 的声明,rates 在 flink sql 中既可以作为 source 也可以是 sink,也可以是维表。

    CREATE TABLE rates (     currency VARCHAR,     rate BIGINT ) WITH (     'connector.type' = 'jdbc', -- 使用 jdbc connector     'connector.url' = 'jdbc:mysql://localhost:3306/flink-test', -- jdbc url     'connector.table' = 'rates', -- 表名     'connector.username' = 'root', -- 用户名     'connector.password' = '123456', -- 密码 )

    如果要用它作为维表的话,那么需要用到 temporal join 的语法。如:

    SELECT   o.amout, o.currency, r.rate, o.amount * r.rate FROM   Orders AS o   JOIN rates FOR SYSTEM_TIME AS OF o.proctime AS r   ON r.currency = o.currency

     关于维表 join,可以查看官方文档: https://ci.apache.org/projects/flink/flink-docs-master/dev/table/streaming/joins.html#join-with-a-temporal-table*来自志愿者整理的flink邮件归档

    2021-12-08 10:45:02
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Flink CDC Meetup PPT - 龚中强 立即下载
Flink CDC Meetup PPT - 王赫 立即下载
Flink CDC Meetup PPT - 覃立辉 立即下载

相关镜像