ADF 映射数据流,是不是可以在源上执行 SQL?
Posted
技术标签:
【中文标题】ADF 映射数据流,是不是可以在源上执行 SQL?【英文标题】:ADF Mapping Data Flows, is it possible to execute SQL on a source?ADF 映射数据流,是否可以在源上执行 SQL? 【发布时间】:2020-06-13 06:49:06 【问题描述】:所以我继续将我可爱的 SSIS 包重写为 ADF 数据流。但是,在很多情况下,我有一些带有相当复杂的 SQL 语句的 OLE DB 源,然后是其他转换。
假设有一条 SQL 语句连接 10 个不同的表。据我所知,我只能在接收器上执行 SQL 语句only。因此,为了获得稍后使用的相同数据集,我必须创建 10 个不同的源和 10 个连接操作。对吗?
这是可能的,但它似乎不是很有效。我想到的唯一另一件事是重新考虑我们的整个 DWH 逻辑,但这会增加很多工作量,所以我宁愿避免这样做。
提前谢谢你!
【问题讨论】:
【参考方案1】:其实可以在Source上执行SQL查询(只能做sql查询)。
例如,我在 Source Azure SQL 数据库中进行 SQL 查询。
这是我的表 test4
和 test6
中的数据:
不要在源数据集中指定表:
数据流源设置:
Source Options,执行一个连接两个表的 SQL 查询:
select a.id, a.tname,b.tt from test6 as a left join test4 as b on a.id=b.id
导入查询结果的schema:
数据预览:
希望这会有所帮助。
【讨论】:
以上是关于ADF 映射数据流,是不是可以在源上执行 SQL?的主要内容,如果未能解决你的问题,请参考以下文章
如何解决冲突:使用开玩笑快照测试时“在源上删除,在目标上修改”?
SQL 从包含表名、列名和值列映射的数据表中将数据插入到多个表中,可以在源中更改