阅读 70

Flink基础(128):FLINK-SQL语法 (22) DQL(14) OPERATIONS(11) Joins(5) 其他

Array Expansion(数组展开)

为给定数组中的每个元素返回新行

 
SELECT order_id, tagFROM Orders CROSS JOIN UNNEST(tags) AS t (tag)
 

Table Function

连接表和 Table Function 的结果,左(外)表中的每一行将会与调用 Table Function 所产生的所有结果中相关行进行 join。用户自定义表函数( User-defined table functions,UDTFs ) 在执行前必须先注册。

INNER JOIN

若表函数返回了空结果,左表(outer)的行将会被删除。

 
SELECT order_id, resFROM Orders,LATERAL TABLE(table_func(order_id)) t(res)
 

LEFT OUTER JOIN

若表函数返回了空结果,将会保留相对应的外部行并用空值填充结果。

 
SELECT order_id, resFROM OrdersLEFT OUTER JOIN LATERAL TABLE(table_func(order_id)) t(res)  ON TRUE

 

参考:https://xie.infoq.cn/article/bf67b2eac8650e57df1ae154c

 

原文:https://www.cnblogs.com/qiu-hua/p/15195730.html

文章分类
代码人生
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐