无法通过 google、msdn(和其他 Microsoft)文档或 SO 找到答案。
在 Azure 数据工厂中,您可以通过使用管道中的复制事件从数据集中获取数据。管道定义包括查询。我在文档中看到的所有查询都是简单的、没有连接的单表查询。在本例中,数据集被定义为数据库中“TableName”=“mytable”的表。此外,还可以从存储过程中检索数据,大概允许更复杂的 SQL。
有没有一种方法可以在管道中定义更复杂的查询,其中包括连接和/或转换逻辑,这些逻辑可以更改查询中的数据或管道而不是存储过程。我知道您可以在数据集中指定字段,但不知道如何绕过“tablename”属性。
如果有办法,那会是什么方法?
输入是本地 SQL Server。输出是azure sql数据库。
为了清晰起见已更新。
最佳答案
是的,sqlReaderQuery 可能比示例中提供的复杂得多,并且它不必仅使用数据集中的表名称。
在我的一个管道中,我有一个表名称为“dbo.tbl_Build”的数据集,但我的 sqlReaderQuery 查看该数据库中的多个表。这是一个被严重截断的示例:
将 BuildErrorNodes 作为(选择 infoNode.BuildId,...)作为 MessageValue,从 dbo.tbl_BuildInformation2 作为 infoNode 内部联接 dbo.tbl_BuildInformationType 作为 infoType on(infoNode.PartitionId = infoType),BuildInfo 作为 ...
在数据集中列出单个表名称,然后在查询中使用多个表有点令人困惑,但它工作得很好。
关于azure - 从查询填充 Azure 数据工厂数据集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32597284/