😂

不好意思,没注意到

感谢

Benchao Li <[email protected]> 于2020年6月7日周日 下午6:47写道:

> FROM_UNIXTIME接收的是秒的时间戳,你的maxwell_ts看起来是微秒吧,应该/1000000吧
>
> macia kk <[email protected]> 于2020年6月7日周日 下午6:15写道:
>
>> 打印出来是这样的
>>
>> "maxwell_ts":1591518126072000,"ts_watermark":"52403-03-16 00:21:12"
>>
>> macia kk <[email protected]> 于2020年6月7日周日 下午5:53写道:
>>
>>> 再次感谢,成功了,这个问题困扰我两周了。还有个问题,能麻烦帮我看下嘛
>>>
>>> 如上,这里定义的 ts_watermark, 想用他们做 watermakr,但是他的返回结果是 null, 我的 maxwell_ts 是
>>> millseconds,我看了函数的使用方法,没想到哪里有问题
>>>
>>> val bsSettings = 
>>> EnvironmentSettings.newInstance().useBlinkPlanner().inStreamingMode().build()
>>> val bsTableEnv = StreamTableEnvironment.create(env, bsSettings) val
>>> sourceTable = """CREATE TABLE my_kafak_source ( | `table` varchar, |
>>> `database` varchar, | `data` row < transaction_id varchar, | user_id int, |
>>> amount int, | >, | maxwell_ts bigint, | ts_watermark as
>>> TO_TIMESTAMP(FROM_UNIXTIME(maxwell_ts/1000)) |) WITH ( |)""".stripMargin
>>>
>>> Leonard Xu <[email protected]> 于2020年6月7日周日 下午5:51写道:
>>>
>>>> Hi,
>>>> 1.10确实有这个bug,
>>>> 这个问题在1.10.1中已经修复了,你可以使用升级到1.10.1,Benchao之前修了一个计算列相关的,我刚刚看不使用计算列也会有这问题,应该是在[1]中
>>>> jark wu 修复的。
>>>>
>>>> Best,
>>>> Leonard Xu
>>>> [1] https://issues.apache.org/jira/browse/FLINK-16526 <
>>>> https://issues.apache.org/jira/browse/FLINK-16526>
>>>>
>>>> > 在 2020年6月7日,15:32,macia kk <[email protected]> 写道:
>>>> >
>>>> > 各位大佬,
>>>> >
>>>> > 我的数据源 json 里有 database, table 字段,想解析出来,是保留关键字,我加了反引号,但是还是报错,这是为什么呢
>>>> >
>>>> >    val bsSettings =
>>>> >
>>>> EnvironmentSettings.newInstance().useBlinkPlanner().inStreamingMode().build()
>>>> >    val bsTableEnv = StreamTableEnvironment.create(env, bsSettings)
>>>> >    val sourceTable = """CREATE TABLE my_kafak_source (
>>>> >                        |    `table` varchar,
>>>> >                        |    `database` varchar,
>>>> >                        |    `data` row < transaction_id varchar,
>>>> >                        |               user_id int,
>>>> >                        |               amount int,
>>>> >                        |    >,
>>>> >                        |    maxwell_ts bigint,
>>>> >                        |    ts_watermark as
>>>> > TO_TIMESTAMP(FROM_UNIXTIME(maxwell_ts/1000))
>>>> >                        |) WITH (
>>>> >                        |)""".stripMargin
>>>> >
>>>> > error
>>>> >
>>>> > The program finished with the following exception:
>>>> >
>>>> > org.apache.flink.client.program.ProgramInvocationException: The main
>>>> > method caused an error: SQL parse failed. Encountered "table" at line
>>>> > 1, column 8.
>>>> > Was expecting one of:
>>>> >    "ABS" ...
>>>> >    "ALL" ...
>>>> >    "ARRAY" ...
>>>> >    "AVG" ...
>>>> >    "CARDINALITY" ...
>>>> >    "CASE" ...
>>>> >    "CAST" ...
>>>> >    "CEIL" ...
>>>>
>>>>
>
> --
>
> Best,
> Benchao Li
>

回复