- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有两个 SQL 服务器,并且两个服务器都有相同的表,名称为“[TABLE-A]”。我需要做的是,我想在 [SERVER2].[TABLE-A] 中维护与 [SERVER1].[TABLE-A] 中相同的记录。每当插入或删除任何记录时 [SERVER1].[TABLE-A] 我需要在 [SERVER2].[TABLE-A] 中执行相同的操作。因此,我创建了两个名为“Lookup1”和“Lookup2”的查找事件。从 Lookup1 中,我从下面的查询中获取 [SERVER1].[TABLE-A] 中存在的所有唯一 ID。
SELECT DISTINCT Id from [SERVER1].[TABLE-A]
这给了我一个包含所有 70 个不同 ID 的列。
我的想法是在 Lookup2 中使用此 Id,并删除 Lookup1 输出中不存在的 Id。
DELETE FROM [SERVER2].[TABLE-A] WHERE Id NOT IN ('@{activity('Lookup1').output.value[0].Id}')
但我无法将这 70 个 Id 放入 ('@{activity('Lookup1').output.value[0].Id}') 中,因为我以这种方式指定,所以它只需要这 70 个 Id 中的 1 个值。如何将这 70 个 ID 放入我的 Lookup2 查询中?
最佳答案
查找事件输出将为数组类型。示例查找事件输出数据:
{
"value": [
{
"id": 1
},
{
"id": 3
},
{
"id": 4
}
]
}
表达式 @{activity('Lookup1').output.value[0].Id}
将仅给出第一个值。为了将查找事件中的所有值提供给 SQL 查询,需要对 Lookup1 数据进行一些更改
{"id":
和 }
将从数据中删除,[
和 ]
将分别替换为 (
和 )
。这样,上面的数据就会变成(1,3,4)
。
为此,采用字符串类型的变量 v1 并将该变量的值设置为 @{activity('Lookup1').output.value}
。
采用变量 v2(字符串类型),并在该变量中从 v1 中删除所有不需要的数据。该值的给出形式为 @{replace(replace(replace(replace(variables('v1'),'{"id":',''),'}',''),'[',' ('),']',')')}
.
然后查找 Activity2 并给出查询
select * from emp1 where id in @{variables('v2')}
这将从 emp1
中选择 lookup1
表中可用的行。删除sql命令也可以类似的写法。
关于sql - 如何将一个查找事件的输出用于 ADF 中的另一查找事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/76078474/
我是一名优秀的程序员,十分优秀!