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

Function unparse_cross_join

datafusion/core/tests/sql/joins.rs:267–301  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

265// Issue #17359: https://github.com/apache/datafusion/issues/17359
266#[tokio::test]
267async fn unparse_cross_join() -> Result<()> {
268 let ctx = SessionContext::new();
269
270 let j1_schema = Arc::new(Schema::new(vec![
271 Field::new("j1_id", DataType::Int32, true),
272 Field::new("j1_string", DataType::Utf8, true),
273 ]));
274 let j2_schema = Arc::new(Schema::new(vec![
275 Field::new("j2_id", DataType::Int32, true),
276 Field::new("j2_string", DataType::Utf8, true),
277 ]));
278
279 ctx.register_table("j1", Arc::new(MemTable::try_new(j1_schema, vec![vec![]])?))?;
280 ctx.register_table("j2", Arc::new(MemTable::try_new(j2_schema, vec![vec![]])?))?;
281
282 let df = ctx
283 .sql(
284 r#"
285 select j1.j1_id, j2.j2_string
286 from j1, j2
287 where j2.j2_id = 0
288 "#,
289 )
290 .await?;
291
292 let unopt_sql = plan_to_sql(df.logical_plan())?;
293 assert_snapshot!(unopt_sql, @"SELECT j1.j1_id, j2.j2_string FROM j1 CROSS JOIN j2 WHERE (j2.j2_id = 0)");
294
295 let optimized_plan = df.into_optimized_plan()?;
296
297 let opt_sql = plan_to_sql(&optimized_plan)?;
298 assert_snapshot!(opt_sql, @"SELECT j1.j1_id, j2.j2_string FROM j1 CROSS JOIN j2 WHERE (j2.j2_id = 0)");
299
300 Ok(())
301}

Callers

nothing calls this directly

Calls 6

newFunction · 0.85
plan_to_sqlFunction · 0.85
sqlMethod · 0.80
into_optimized_planMethod · 0.80
register_tableMethod · 0.45
logical_planMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…