OverwriteByExpression Logical Command¶
OverwriteByExpression is a V2WriteCommand.
Creating Instance¶
OverwriteByExpression takes the following to be created:
- NamedRelation
- Delete Expression
- Logical Query Plan
- Write Options
-
isByNameflag
OverwriteByExpression is created (using byName and byPosition utilities) when...FIXME
resolved¶
resolved: Boolean
resolved is true when outputResolved and delete expression are.
resolved is part of the LogicalPlan abstraction.
Creating OverwriteByExpression by Name¶
byName(
table: NamedRelation,
df: LogicalPlan,
deleteExpr: Expression,
writeOptions: Map[String, String] = Map.empty): OverwriteByExpression
byName creates a OverwriteByExpression with isByName enabled (true).
byName is used when:
Creating OverwriteByExpression by Position¶
byPosition(
table: NamedRelation,
query: LogicalPlan,
deleteExpr: Expression,
writeOptions: Map[String, String] = Map.empty): OverwriteByExpression
byPosition creates a OverwriteByExpression with isByName disabled (false).
byPosition is used:
- ResolveInsertInto logical resolution rule is executed
DataFrameWriteris requested to insertInto