flink-user-zh mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jark Wu <imj...@gmail.com>
Subject Re: 使用flink-sql实现mysql维表的join的ddl和dml的示列
Date Sat, 12 Oct 2019 07:55:36 GMT
抱歉,SQL CLI 中目前暂不支持 DDL 



> 在 2019年10月12日,15:17,yelun <986463030@qq.com> 写道:
> 
> 请问这种创建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