MCPcopy Create free account
hub / github.com/apache/datafusion / derive

Method derive

datafusion/sql/src/unparser/plan.rs:336–357  ·  view source on GitHub ↗
(
        &self,
        plan: &LogicalPlan,
        relation: &mut RelationBuilder,
        alias: Option<ast::TableAlias>,
        lateral: bool,
    )

Source from the content-addressed store, hash-verified

334 }
335
336 fn derive(
337 &self,
338 plan: &LogicalPlan,
339 relation: &mut RelationBuilder,
340 alias: Option<ast::TableAlias>,
341 lateral: bool,
342 ) -> Result<()> {
343 let mut derived_builder = DerivedRelationBuilder::default();
344 derived_builder.lateral(lateral).alias(alias).subquery({
345 let inner_statement = self.plan_to_sql(plan)?;
346 if let ast::Statement::Query(inner_query) = inner_statement {
347 inner_query
348 } else {
349 return internal_err!(
350 "Subquery must be a Query, but found {inner_statement:?}"
351 );
352 }
353 });
354 relation.derived(derived_builder);
355
356 Ok(())
357 }
358
359 fn derive_with_dialect_alias(
360 &self,

Calls 5

subqueryMethod · 0.80
lateralMethod · 0.80
plan_to_sqlMethod · 0.80
derivedMethod · 0.80
aliasMethod · 0.45

Tested by

no test coverage detected