PRIORCONNECT_BY_ROOT 运算符仅在 层次查询 中有效。

PRIOR 运算符

在层次查询中,CONNECT BY 条件中应该包含至少一个由 PRIOR 运算符限定的表达式。PRIOR 运算符的结果,通过使用当前行的父行计算紧随后的表达式来得到。

PRIOR 最常用在列的等值比较场景中(PRIOR 可以在比较符的任意一侧)。理论上,在 CONNECT BY 子句中也可以使用等号(=)以外的其他运算符。但是,由这些其他运算符创建的条件可能会导致循环,在这种情况下,OceanBase 在运行时会检测循环并返回错误。

CONNECT_BY_ROOT 运算符

CONNECT_BY_ROOT 是一元运算符,仅在层次查询中有效。CONNECT_BY_ROOT 的参数可以是列和大部分的表达式,CONNECT_BY_ROOT 运算符的结果,等于使用根行的数据计算参数的值。

您不能在 START WITH 条件或 CONNECT BY 条件中指定此运算符。