跳至主要内容

pgCondition

此“修饰符步骤”(**不是** ExecutableStep)通常从 $pgSelect.wherePlan()$pgSelect.havingPlan() 或类似方法获取。它对于逐步构建条件(WHEREHAVING 子句)很有用。

提示

这是一个高级步骤,除非您在 GraphQL 模式中构建高级过滤功能,否则您可能永远不会使用它。

pgConditions 是使用父级(PgConditionCapableStep - 通常是另一个 PgConditionStep、PgSelectStep 或类似的)和模式创建的

  • PASS_THRU - 将条件直接传递给父级
  • AND - 使用 AND 结合条件,并将结果传递给父级
  • OR - 使用 OR 结合条件,并将结果传递给父级
  • NOT - 使用 AND 结合条件,将它们分组并对结果进行 NOT 操作,然后将结果传递给父级
  • EXISTS - 使用条件构建 EXISTS(...) 表达式,并将其传递给父级

$pgCondition.orPlan()

返回 OR 模式下的子 pgCondition。

$pgCondition.andPlan()

返回 AND 模式下的子 pgCondition。

$pgCondition.notPlan()

返回 NOT 模式下的子 pgCondition。

$pgCondition.existsPlan(options)

返回 EXISTS 模式下的子 pgCondition,并使用给定的选项。

$pgCondition.where(condition)

condition 添加到条件列表中。不能在 "having" 模式下使用。

$pgCondition.having(condition)

condition 添加到条件列表中。除非在 "having" 模式下,否则不能使用。

$pgCondition.placeholder($step, codec)

等效于 $pgSelect.placeholder($step, codec)