MCPcopy Create free account
hub / github.com/MaterializeInc/materialize / plan_subquery

Function plan_subquery

src/sql/src/plan/query.rs:4621–4635  ·  view source on GitHub ↗
(ecx: &ExprContext, query: &Query<Aug>)

Source from the content-addressed store, hash-verified

4619}
4620
4621fn plan_subquery(ecx: &ExprContext, query: &Query<Aug>) -> Result<CoercibleScalarExpr, PlanError> {
4622 if !ecx.allow_subqueries {
4623 sql_bail!("{} does not allow subqueries", ecx.name)
4624 }
4625 let mut qcx = ecx.derived_query_context();
4626 let (expr, _scope) = plan_nested_query(&mut qcx, query)?;
4627 let column_types = qcx.relation_type(&expr).column_types;
4628 if column_types.len() != 1 {
4629 sql_bail!(
4630 "Expected subselect to return 1 column, got {} columns",
4631 column_types.len()
4632 );
4633 }
4634 Ok(expr.select().into())
4635}
4636
4637fn plan_list_subquery(
4638 ecx: &ExprContext,

Callers 1

plan_expr_innerFunction · 0.85

Calls 5

plan_nested_queryFunction · 0.85
derived_query_contextMethod · 0.80
relation_typeMethod · 0.80
lenMethod · 0.45
selectMethod · 0.45

Tested by

no test coverage detected