我对Nifi还是陌生的,我试图对有多个表并从每个表中选择属性的SQL服务器执行SQL。我们如何在Nifi中执行此操作。我看到的是“ Generate Table Fetch”,它允许我提及“ Table Name”及其“ Where Clause”。不确定,如果涉及多个表,我们如何执行复杂的联接。
示例-
Select
a.col1,
a.col2,
b.col3,
b.col4,
c.col5,
c.col6
from a left outer join b
on a.colx=b.colx
inner join c
on a.coly = c.coly
where exists (some condition etc)
谢谢, 悉达多
答案 0 :(得分:1)
使用 ExecuteSQL/ExecuteSQLRecord(NiFi-1.8+)
处理器,并将查询保留在SQL select query
属性中。
配置/启用 dbcp连接池。
请紧记 ExecuteSQL
处理器不存储状态:
因此,如果要增量运行处理器,则需要将状态存储在NiFi(或)外部,然后每次提取状态值并执行查询。
请参阅this链接,以获取有关使用NiFi存储/获取状态的更多详细信息。