如何在Azure数据工厂中从查找活动的输出中删除转义字符?
我正在Azure数据工厂中从SQL数据库读取JSON数据。 我有Azure数据工厂(ADF)管道,包含“查找”活动,它从SQL DB读取JSON数据并将其引入ADF管道。当我看到ADF的查找活动的输出时,转义字符(\)不知何故被插入到JSON数据中 例如,查找活动的输出如下所示: {\'resourceType\':\'Sales',id:\'9i5W6tp-JTd-24252\' 知道如何从管道中的JSON中删除转义字符吗 更新: 谢谢你的更新。当我尝试你的步骤时,它对我不起作用如何在Azure数据工厂中从查找活动的输出中删除转义字符?,azure,azure-devops,azure-sql-database,azure-data-factory,Azure,Azure Devops,Azure Sql Database,Azure Data Factory,我正在Azure数据工厂中从SQL数据库读取JSON数据。 我有Azure数据工厂(ADF)管道,包含“查找”活动,它从SQL DB读取JSON数据并将其引入ADF管道。当我看到ADF的查找活动的输出时,转义字符(\)不知何故被插入到JSON数据中 例如,查找活动的输出如下所示: {\'resourceType\':\'Sales',id:\'9i5W6tp-JTd-24252\' 知道如何从管道中的JSON中删除转义字符吗 更新: 谢谢你的更新。当我尝试你的步骤时,它对我不起作用 在查找中,我
{
"firstRow": {
"JSONData": "{\"resourceType\":\"counter\",\"id\":\"9i5W6tp-JTd- and more
正如我们所知,“\”是一个转义字符。在您的例子中,出现此符号是因为它用于转义一对双引号中的一个双引号。
例如,“\”“=>” 但没关系,我们只需要将它从字符串类型转换为json类型,它会自动删除转义字符。 我创建了一个测试来验证它
@json(activity('Lookup1').output.firstRow.value)
将其从字符串类型转换为json类型。因此,您想将
{“resourceType”:“Sales”,“id”:“9i5W6tp-JTd-24252”}
转换为{“resourceType”:Sales,“id”:9i5W6tp-JTd-24252}
,如下所示?实际上,查找活动的输出是这样的:“{”resourceType\“:“Sales\”,“id\”:“9i5W6tp-JTd-24252”我想删除所有转义字符,输出应该是这样的:{“resourceType”:“Sales”,“id”:“9i5W6tp-JTd-24252”}嗨,Dinesh Madhup,我也在使用SQL查询从数据库中获取数据。我在使用SQL查询DECLARE@json NVARCHAR(MAX);SET@json=N'[{“id”:2,“info”:{“name”:“John”,“姓氏”:“Smith”},“age”:25},{”id“:5,“info”:{“name”:“Jane”,“姓氏”:“Smith”},“dob”:“2005-11-04T12:00:00”}];从OPENJSON(@json)
)中选择*将返回一个json字符串。请参阅我的帖子。除了SQL查询之外,我尝试了相同的步骤。SQL查询重要吗?当我使用@json(activity('Lookup2')。output.firstRow.JSONData时,它实际上可以工作但我只需要值。不想看到“variableName”:“Object”。这就是为什么我要使用:@json(activity('Lookup2')。output.value)。有什么区别吗?这个表达式是根据输出的结构确定的,而不是相同的。嗨,约瑟夫,我可以看到事情是如何被破坏的。如果我的查询有超过1行,那么它就会失败。例如:从StgFHIR中选择TOP(2)JSONData,其中ISJSON(JSONData)>0在这种情况下,我们不能在此行中使用第一行:@json(activity('Lookup2')).output.firstRow.JSONData那么,如何在查找中使用1行以上的数据呢?