flink sql if 函数使用问题

classic Classic list List threaded Threaded
3 messages Options
kcz
Reply | Threaded
Open this post in threaded view
|

flink sql if 函数使用问题

kcz
flink-1.10.1 blink_planner
if使用时候限制了返回的数据类型吗?
Cannot apply 'IF' to arguments of type 'IF(<BOOLEAN&gt;, <TIMESTAMP(0)&gt;, <VARCHAR(2147483647)&gt;)'. Supported form(s): 'IF(<ANY_TYPE&gt;, <NUMERIC_TYPE&gt;, <NUMERIC_TYPE&gt;)'
我想创建DDL时候,因为字段可能有空,所以如果为空了我想设置一个默认值,但是报错提示是只支持返回数据类型。
Reply | Threaded
Open this post in threaded view
|

Re: flink sql if 函数使用问题

Benchao Li-2
看报错,应该是你的IF的后面两个参数的类型不同吧。这里应该让后面两个参数的类型也相同的,要不然IF函数的返回值类型就不好确定了。

kcz <[hidden email]> 于2020年7月1日周三 上午11:03写道:

> flink-1.10.1 blink_planner
> if使用时候限制了返回的数据类型吗?
> Cannot apply 'IF' to arguments of type 'IF(<BOOLEAN&gt;,
> <TIMESTAMP(0)&gt;, <VARCHAR(2147483647)&gt;)'. Supported form(s):
> 'IF(<ANY_TYPE&gt;, <NUMERIC_TYPE&gt;, <NUMERIC_TYPE&gt;)'
> 我想创建DDL时候,因为字段可能有空,所以如果为空了我想设置一个默认值,但是报错提示是只支持返回数据类型。



--

Best,
Benchao Li
kcz
Reply | Threaded
Open this post in threaded view
|

回复: flink sql if 函数使用问题

kcz
tks&nbsp;




------------------&nbsp;原始邮件&nbsp;------------------
发件人:&nbsp;"Benchao Li"<[hidden email]&gt;;
发送时间:&nbsp;2020年7月1日(星期三) 中午1:15
收件人:&nbsp;"user-zh"<[hidden email]&gt;;

主题:&nbsp;Re: flink sql if 函数使用问题



看报错,应该是你的IF的后面两个参数的类型不同吧。这里应该让后面两个参数的类型也相同的,要不然IF函数的返回值类型就不好确定了。

kcz <[hidden email]&gt; 于2020年7月1日周三 上午11:03写道:

&gt; flink-1.10.1 blink_planner
&gt; if使用时候限制了返回的数据类型吗?
&gt; Cannot apply 'IF' to arguments of type 'IF(<BOOLEAN&amp;gt;,
&gt; <TIMESTAMP(0)&amp;gt;, <VARCHAR(2147483647)&amp;gt;)'. Supported form(s):
&gt; 'IF(<ANY_TYPE&amp;gt;, <NUMERIC_TYPE&amp;gt;, <NUMERIC_TYPE&amp;gt;)'
&gt; 我想创建DDL时候,因为字段可能有空,所以如果为空了我想设置一个默认值,但是报错提示是只支持返回数据类型。



--

Best,
Benchao Li