Condition
当你希望工作流根据早前步骤的输出值或起始输入值采取不同路径时,请使用 Condition。Condition 步骤会评估布尔表达式,并将执行路由到 TRUE 或 FALSE 分支。两个分支必须最终在单个合并步骤处重新汇合,工作流才能继续。 当你需要 if/else 逻辑、门控步骤(例如,仅当分数高于阈值时才发送电子邮件)或工作流中的轻量级 A/B 拆分时,请使用此步骤。配置
| 选项 | 是否必填 | 说明 |
|---|---|---|
| Name | 否 | 步骤在工作流画布中的标签。 |
| Condition | 是 | 决定运行哪个分支的布尔表达式。在 Condition builder 中构建为一行或多行,可选地嵌套在 AND / OR / NOT 组中。 |
| Branches rejoin at | — | 只读。当两个分支汇合到合并步骤时显示。 |
+ 控柄从画布中将步骤添加到该分支的一侧。
操作符
Condition builder 支持以下操作符:- 分组操作符:
AND、OR、NOT— 组合多行或对子表达式取反。 - 叶子操作符:
equals、does not equal>、>=、<、<=contains、starts with、ends withis one ofexists、is empty— 仅取一个左操作数
操作数
每个子句将左操作数与右操作数进行比较(exists 和 is empty 除外,它们仅接受左操作数)。
操作数可以是:
- 工作流变量 — 点击 Insert Variable 引用起始输入(
{{variable_name}})或先前步骤的输出({{step_2.output.score}})。 - 字面值 — 直接在右侧字段中输入字符串、数字、布尔值或数组。
输出
点击步骤标题中的 Run 来测试 Condition。运行完成后,Fetch Hive 会在 Output 中显示评估的布尔结果以及解析的左/右操作数轨迹。 在实际的工作流运行期间,仅执行一个分支——即与布尔结果匹配的那个。该步骤的基础引用为:true 或 false。
示例
从 Search steps… 的 Utilities 分组中添加 Condition。 将 Name 设置为类似Score above threshold 的内容。
在 Condition builder 中:
- 在左操作数上,点击 Insert Variable 并选择
{{step_2.output.score}}。 - 选择
>操作符。 - 在右操作数上,选择 Literal 并输入
70。
备注
- 表达式必须在保存前完整。每行都需要左和右操作数(
exists/is empty除外,它们仅取一个左操作数)。 - 评估器对看起来像数字的字符串比较宽松——比较
"70"与70会按预期工作。 - 仅当两个分支都为空时才能移除 Condition。移除 Condition 会级联删除 TRUE 和 FALSE 分支内的每个步骤,所以如果你想保留这些步骤,请先清空分支。
- 两个分支必须汇合到单个合并步骤,工作流才有效。如果分支没有重新汇合,Fetch Hive 会显示警告。
- Condition 暂不能嵌套在另一个 Condition 分支内。

