flink-user-zh mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From yelun <986463...@qq.com>
Subject Re: 使用flink-sql实现mysql维表的join的ddl和dml的示列
Date Sat, 12 Oct 2019 07:17:28 GMT
请问这种创建dimtable ddl方式在flink sql-client的可以写吗,或者在注册一个catalog,谢谢。

> 在 2019年10月12日,下午2:12,yelun <986463030@qq.com> 写道:
> 
> 我试了一下云邪大佬的方法是可以的
> 
>> 在 2019年10月12日,上午9:16,迎风浪子 <576637834@qq.com> 写道:
>> 
>> select *, PROCTIME() as proctime from source 报异常SQL parse failed. Encountered
")" at ...&nbsp;
>> PROCTIME ()这方法好像不支持。
>> 
>> 
>> 
>> ---原始邮件---
>> 发件人: "Jark Wu"<imjark@gmail.com&gt;
>> 发送时间: 2019年10月11日(星期五) 晚上7:23
>> 收件人: "user-zh"<user-zh@flink.apache.org&gt;;
>> 主题: Re: 使用flink-sql实现mysql维表的join的ddl和dml的示列
>> 
>> 
>> 目前 o.proctime 在 DDL 暂时还声明不了,不可以可以使用嵌套 query
生成一个 proctime 字段。
>> 
>> "select ...
>> &nbsp;from (select *, PROCTIME() as proctime from source)"
>> 
>> On Fri, 11 Oct 2019 at 18:45, 迎风浪子 <576637834@qq.com&gt; wrote:
>> 
>> &gt; 请问sql ddl如何定义o.proctime呢?
>> &gt;
>> &gt;
>> &gt;
>> &gt; ---原始邮件---
>> &gt; 发件人: "Jark Wu"<imjark@gmail.com&amp;gt;
>> &gt; 发送时间: 2019年9月29日(星期日) 中午11:42
>> &gt; 收件人: "user-zh"<user-zh@flink.apache.org&amp;gt;;
>> &gt; 主题: Re: 使用flink-sql实现mysql维表的join的ddl和dml的示列
>> &gt;
>> &gt;
>> &gt; Hi,
>> &gt;
>> &gt; mysql 维表的 DDL 和 源表/结果表 的 DDL 是一样的。 例如下面这个
DDL 的声明,rates 在 flink sql 中既可以作为
>> &gt; source 也可以是 sink,也可以是维表。
>> &gt;
>> &gt; CREATE TABLE rates (
>> &gt; &amp;nbsp;&amp;nbsp;&amp;nbsp; currency VARCHAR,
>> &gt; &amp;nbsp;&amp;nbsp;&amp;nbsp; rate BIGINT
>> &gt; ) WITH (
>> &gt; &amp;nbsp;&amp;nbsp;&amp;nbsp; 'connector.type' = 'jdbc', --
使用 jdbc connector
>> &gt; &amp;nbsp;&amp;nbsp;&amp;nbsp; 'connector.url' =
>> &gt; 'jdbc:mysql://localhost:3306/flink-test', -- jdbc url
>> &gt; &amp;nbsp;&amp;nbsp;&amp;nbsp; 'connector.table' = 'rates',
-- 表名
>> &gt; &amp;nbsp;&amp;nbsp;&amp;nbsp; 'connector.username' = 'root',
-- 用户名
>> &gt; &amp;nbsp;&amp;nbsp;&amp;nbsp; 'connector.password' = '123456',
-- 密码
>> &gt; )
>> &gt;
>> &gt; 如果要用它作为维表的话,那么需要用到 temporal join 的语法。如:
>> &gt;
>> &gt; SELECT
>> &gt; &amp;nbsp; o.amout, o.currency, r.rate, o.amount * r.rate
>> &gt; FROM
>> &gt; &amp;nbsp; Orders AS o
>> &gt; &amp;nbsp; JOIN rates FOR SYSTEM_TIME AS OF o.proctime AS r
>> &gt; &amp;nbsp; ON r.currency = o.currency
>> &gt;
>> &gt; &amp;nbsp;关于维表 join,可以查看官方文档:
>> &gt;
>> &gt; https://ci.apache.org/projects/flink/flink-docs-master/dev/table/streaming/joins.html#join-with-a-temporal-table
>> &gt;
>> &gt;
>> &gt;
>> &gt;
>> &gt; On Fri, 27 Sep 2019 at 14:12, yelun <986463030@qq.com&amp;gt; wrote:
>> &gt;
>> &gt; &amp;gt; Hi,各位大佬:
>> &gt; &amp;gt;
>> &gt; &amp;gt; 有没有使用flink-sql实现mysql维表的join的ddl和dml的示列的demo能够参考一下,非常感谢。
> 
> 




Mime
View raw message