AttributeSeq¶
AttributeSeq is an implicit class (Scala) of Seq[Attribute] type.
AttributeSeq is a Serializable (Java).
Creating Instance¶
AttributeSeq takes the following to be created:
Resolving Attribute Names (to NamedExpressions)¶
resolve(
nameParts: Seq[String],
resolver: Resolver): Option[NamedExpression]
resolve resolves the given nameParts to a NamedExpression.
resolve branches off based on whether the number of the qualifier parts of all the Attributes is 3 or less or not (more than 3).
resolve can return:
AliaswithExtractValues for nested fields- NamedExpression if there were no nested fields to resolve
None(undefined value) for no candidate
resolve throws an AnalysisException for more candidates:
Reference '[name]' is ambiguous, could be: [referenceNames].
resolve is used when:
LateralJoinis requested toresolveChildrenLogicalPlanis requested to resolveChildren and resolve