forked from docs/doc-exports
Reviewed-by: Kacur, Michal <michal.kacur@t-systems.com> Co-authored-by: Yang, Tong <yangtong2@huawei.com> Co-committed-by: Yang, Tong <yangtong2@huawei.com>
32 lines
1.5 KiB
HTML
32 lines
1.5 KiB
HTML
<a name="mrs_01_24227"></a><a name="mrs_01_24227"></a>
|
|
|
|
<h1 class="topictitle1">UDTF Java and SQL Examples</h1>
|
|
<div id="body32001227"><div class="section" id="mrs_01_24227__en-us_topic_0000001219230883_section95401225482"><h4 class="sectiontitle">UDTF Java Example</h4><pre class="screen" id="mrs_01_24227__en-us_topic_0000001219230883_screen1454016251989">package com.<em id="mrs_01_24227__i19547102674514">xxx</em>.udf;
|
|
import org.apache.flink.api.java.tuple.Tuple2;
|
|
import org.apache.flink.table.functions.TableFunction;
|
|
public class UdfClass_UDTF extends TableFunction<Tuple2<String, Integer>> {
|
|
public void eval(String str) {
|
|
Tuple2<String, Integer> tuple2 = Tuple2.of(str, str.length());
|
|
collect(tuple2);
|
|
}
|
|
}</pre>
|
|
</div>
|
|
<div class="section" id="mrs_01_24227__en-us_topic_0000001219230883_section4746216205515"><h4 class="sectiontitle">UDTF SQL Example</h4><pre class="screen" id="mrs_01_24227__en-us_topic_0000001219230883_screen19516103114551">CREATE TEMPORARY FUNCTION udtf as 'com.<em id="mrs_01_24227__i15442104484619">xxx</em>.udf.UdfClass_UDTF';
|
|
CREATE TABLE udfSource (a VARCHAR) WITH ('connector' = 'datagen','rows-per-second'='1');
|
|
CREATE TABLE udfSink (b VARCHAR,c int) WITH ('connector' = 'print');
|
|
INSERT INTO
|
|
udfSink
|
|
SELECT
|
|
str,
|
|
strLength
|
|
FROM
|
|
udfSource,lateral table(udtf(udfSource.a)) as T(str,strLength);</pre>
|
|
</div>
|
|
</div>
|
|
<div>
|
|
<div class="familylinks">
|
|
<div class="parentlink"><strong>Parent topic:</strong> <a href="mrs_01_24223.html">Managing UDFs</a></div>
|
|
</div>
|
|
</div>
|
|
|