The type of the link. For example, in Hash Joins this could be used to
distinguish between the build child and the probe child, or in the case
of the child being an output variable, to represent the tag associated
with the output variable.
The type of the link. For example, in Hash Joins this could be used to
distinguish between the build child and the probe child, or in the case
of the child being an output variable, to represent the tag associated
with the output variable.
Only present if the child node is SCALAR and corresponds
to an output variable of the parent node. The field carries the name of
the output variable.
For example, a TableScan operator that reads rows from a table will
have child links to the SCALAR nodes representing the output variables
created for each column that is read by the operator. The corresponding
variable fields will be set to the variable names assigned to the
columns.
Only present if the child node is SCALAR and corresponds
to an output variable of the parent node. The field carries the name of
the output variable.
For example, a TableScan operator that reads rows from a table will
have child links to the SCALAR nodes representing the output variables
created for each column that is read by the operator. The corresponding
variable fields will be set to the variable names assigned to the
columns.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-28 UTC."],[],[],null,["# Interface PlanNode.ChildLinkOrBuilder (6.98.1)\n\nVersion latestkeyboard_arrow_down\n\n- [6.98.1 (latest)](/java/docs/reference/google-cloud-spanner/latest/com.google.spanner.v1.PlanNode.ChildLinkOrBuilder)\n- [6.98.0](/java/docs/reference/google-cloud-spanner/6.98.0/com.google.spanner.v1.PlanNode.ChildLinkOrBuilder)\n- [6.97.1](/java/docs/reference/google-cloud-spanner/6.97.1/com.google.spanner.v1.PlanNode.ChildLinkOrBuilder)\n- [6.96.1](/java/docs/reference/google-cloud-spanner/6.96.1/com.google.spanner.v1.PlanNode.ChildLinkOrBuilder)\n- [6.95.1](/java/docs/reference/google-cloud-spanner/6.95.1/com.google.spanner.v1.PlanNode.ChildLinkOrBuilder)\n- [6.94.0](/java/docs/reference/google-cloud-spanner/6.94.0/com.google.spanner.v1.PlanNode.ChildLinkOrBuilder)\n- [6.93.0](/java/docs/reference/google-cloud-spanner/6.93.0/com.google.spanner.v1.PlanNode.ChildLinkOrBuilder)\n- [6.89.0](/java/docs/reference/google-cloud-spanner/6.89.0/com.google.spanner.v1.PlanNode.ChildLinkOrBuilder)\n- [6.88.0](/java/docs/reference/google-cloud-spanner/6.88.0/com.google.spanner.v1.PlanNode.ChildLinkOrBuilder)\n- [6.87.0](/java/docs/reference/google-cloud-spanner/6.87.0/com.google.spanner.v1.PlanNode.ChildLinkOrBuilder)\n- [6.86.0](/java/docs/reference/google-cloud-spanner/6.86.0/com.google.spanner.v1.PlanNode.ChildLinkOrBuilder)\n- [6.85.0](/java/docs/reference/google-cloud-spanner/6.85.0/com.google.spanner.v1.PlanNode.ChildLinkOrBuilder)\n- [6.83.0](/java/docs/reference/google-cloud-spanner/6.83.0/com.google.spanner.v1.PlanNode.ChildLinkOrBuilder)\n- [6.82.0](/java/docs/reference/google-cloud-spanner/6.82.0/com.google.spanner.v1.PlanNode.ChildLinkOrBuilder)\n- [6.80.1](/java/docs/reference/google-cloud-spanner/6.80.1/com.google.spanner.v1.PlanNode.ChildLinkOrBuilder)\n- [6.79.0](/java/docs/reference/google-cloud-spanner/6.79.0/com.google.spanner.v1.PlanNode.ChildLinkOrBuilder)\n- [6.77.0](/java/docs/reference/google-cloud-spanner/6.77.0/com.google.spanner.v1.PlanNode.ChildLinkOrBuilder)\n- [6.74.1](/java/docs/reference/google-cloud-spanner/6.74.1/com.google.spanner.v1.PlanNode.ChildLinkOrBuilder)\n- [6.72.0](/java/docs/reference/google-cloud-spanner/6.72.0/com.google.spanner.v1.PlanNode.ChildLinkOrBuilder)\n- [6.71.0](/java/docs/reference/google-cloud-spanner/6.71.0/com.google.spanner.v1.PlanNode.ChildLinkOrBuilder)\n- [6.69.0](/java/docs/reference/google-cloud-spanner/6.69.0/com.google.spanner.v1.PlanNode.ChildLinkOrBuilder)\n- [6.68.0](/java/docs/reference/google-cloud-spanner/6.68.0/com.google.spanner.v1.PlanNode.ChildLinkOrBuilder)\n- [6.66.0](/java/docs/reference/google-cloud-spanner/6.66.0/com.google.spanner.v1.PlanNode.ChildLinkOrBuilder)\n- [6.65.1](/java/docs/reference/google-cloud-spanner/6.65.1/com.google.spanner.v1.PlanNode.ChildLinkOrBuilder)\n- [6.62.0](/java/docs/reference/google-cloud-spanner/6.62.0/com.google.spanner.v1.PlanNode.ChildLinkOrBuilder)\n- [6.60.0](/java/docs/reference/google-cloud-spanner/6.60.0/com.google.spanner.v1.PlanNode.ChildLinkOrBuilder)\n- [6.58.0](/java/docs/reference/google-cloud-spanner/6.58.0/com.google.spanner.v1.PlanNode.ChildLinkOrBuilder)\n- [6.57.0](/java/docs/reference/google-cloud-spanner/6.57.0/com.google.spanner.v1.PlanNode.ChildLinkOrBuilder)\n- [6.56.0](/java/docs/reference/google-cloud-spanner/6.56.0/com.google.spanner.v1.PlanNode.ChildLinkOrBuilder)\n- [6.55.0](/java/docs/reference/google-cloud-spanner/6.55.0/com.google.spanner.v1.PlanNode.ChildLinkOrBuilder)\n- [6.54.0](/java/docs/reference/google-cloud-spanner/6.54.0/com.google.spanner.v1.PlanNode.ChildLinkOrBuilder)\n- [6.53.0](/java/docs/reference/google-cloud-spanner/6.53.0/com.google.spanner.v1.PlanNode.ChildLinkOrBuilder)\n- [6.52.1](/java/docs/reference/google-cloud-spanner/6.52.1/com.google.spanner.v1.PlanNode.ChildLinkOrBuilder)\n- [6.51.0](/java/docs/reference/google-cloud-spanner/6.51.0/com.google.spanner.v1.PlanNode.ChildLinkOrBuilder)\n- [6.50.1](/java/docs/reference/google-cloud-spanner/6.50.1/com.google.spanner.v1.PlanNode.ChildLinkOrBuilder)\n- [6.49.0](/java/docs/reference/google-cloud-spanner/6.49.0/com.google.spanner.v1.PlanNode.ChildLinkOrBuilder)\n- [6.25.1](/java/docs/reference/google-cloud-spanner/6.25.1/com.google.spanner.v1.PlanNode.ChildLinkOrBuilder)\n- [6.24.0](/java/docs/reference/google-cloud-spanner/6.24.0/com.google.spanner.v1.PlanNode.ChildLinkOrBuilder)\n- [6.23.4](/java/docs/reference/google-cloud-spanner/6.23.4/com.google.spanner.v1.PlanNode.ChildLinkOrBuilder)\n- [6.22.0](/java/docs/reference/google-cloud-spanner/6.22.0/com.google.spanner.v1.PlanNode.ChildLinkOrBuilder)\n- [6.21.2](/java/docs/reference/google-cloud-spanner/6.21.2/com.google.spanner.v1.PlanNode.ChildLinkOrBuilder)\n- [6.20.0](/java/docs/reference/google-cloud-spanner/6.20.0/com.google.spanner.v1.PlanNode.ChildLinkOrBuilder)\n- [6.19.1](/java/docs/reference/google-cloud-spanner/6.19.1/com.google.spanner.v1.PlanNode.ChildLinkOrBuilder)\n- [6.18.0](/java/docs/reference/google-cloud-spanner/6.18.0/com.google.spanner.v1.PlanNode.ChildLinkOrBuilder)\n- [6.17.4](/java/docs/reference/google-cloud-spanner/6.17.4/com.google.spanner.v1.PlanNode.ChildLinkOrBuilder)\n- [6.14.1](/java/docs/reference/google-cloud-spanner/6.14.1/com.google.spanner.v1.PlanNode.ChildLinkOrBuilder) \n\n public static interface PlanNode.ChildLinkOrBuilder extends MessageOrBuilder\n\nImplements\n----------\n\n[MessageOrBuilder](https://cloud.google.com/java/docs/reference/protobuf/latest/com.google.protobuf.MessageOrBuilder.html)\n\nMethods\n-------\n\n### getChildIndex()\n\n public abstract int getChildIndex()\n\nThe node to which the link points.\n\n`int32 child_index = 1;`\n\n### getType()\n\n public abstract String getType()\n\nThe type of the link. For example, in Hash Joins this could be used to\ndistinguish between the build child and the probe child, or in the case\nof the child being an output variable, to represent the tag associated\nwith the output variable.\n\n`string type = 2;`\n\n### getTypeBytes()\n\n public abstract ByteString getTypeBytes()\n\nThe type of the link. For example, in Hash Joins this could be used to\ndistinguish between the build child and the probe child, or in the case\nof the child being an output variable, to represent the tag associated\nwith the output variable.\n\n`string type = 2;`\n\n### getVariable()\n\n public abstract String getVariable()\n\nOnly present if the child node is SCALAR and corresponds\nto an output variable of the parent node. The field carries the name of\nthe output variable.\nFor example, a `TableScan` operator that reads rows from a table will\nhave child links to the `SCALAR` nodes representing the output variables\ncreated for each column that is read by the operator. The corresponding\n`variable` fields will be set to the variable names assigned to the\ncolumns.\n\n`string variable = 3;`\n\n### getVariableBytes()\n\n public abstract ByteString getVariableBytes()\n\nOnly present if the child node is SCALAR and corresponds\nto an output variable of the parent node. The field carries the name of\nthe output variable.\nFor example, a `TableScan` operator that reads rows from a table will\nhave child links to the `SCALAR` nodes representing the output variables\ncreated for each column that is read by the operator. The corresponding\n`variable` fields will be set to the variable names assigned to the\ncolumns.\n\n`string variable = 3;`"]]