@@ -856,9 +856,8 @@ EXPLAIN SELECT id, s['value'], s['value'] + 10, s['label'] FROM simple_struct OR
856856----
857857logical_plan
85885801)Sort: simple_struct.id ASC NULLS LAST, fetch=3
859- 02)--Projection: simple_struct.id, __common_expr_1 AS simple_struct.s[value], __common_expr_1 AS simple_struct.s[value] + Int64(10), get_field(simple_struct.s, Utf8("label"))
860- 03)----Projection: get_field(simple_struct.s, Utf8("value")) AS __common_expr_1, simple_struct.id, simple_struct.s
861- 04)------TableScan: simple_struct projection=[id, s]
859+ 02)--Projection: simple_struct.id, get_field(simple_struct.s, Utf8("value")) AS simple_struct.s[value], get_field(simple_struct.s, Utf8("value")) + Int64(10), get_field(simple_struct.s, Utf8("label"))
860+ 03)----TableScan: simple_struct projection=[id, s]
862861physical_plan
86386201)SortExec: TopK(fetch=3), expr=[id@0 ASC NULLS LAST], preserve_partitioning=[false]
86486302)--DataSourceExec: file_groups={1 group: [[WORKSPACE_ROOT/datafusion/sqllogictest/test_files/scratch/projection_pushdown/simple.parquet]]}, projection=[id, get_field(s@1, value) as simple_struct.s[value], get_field(s@1, value) + 10 as simple_struct.s[value] + Int64(10), get_field(s@1, label) as simple_struct.s[label]], file_type=parquet, predicate=DynamicFilter [ empty ]
@@ -969,10 +968,9 @@ query TT
969968EXPLAIN SELECT s['value'] + s['value'] as doubled FROM simple_struct WHERE id > 2;
970969----
971970logical_plan
972- 01)Projection: __common_expr_1 + __common_expr_1 AS doubled
973- 02)--Projection: get_field(simple_struct.s, Utf8("value")) AS __common_expr_1
974- 03)----Filter: simple_struct.id > Int64(2)
975- 04)------TableScan: simple_struct projection=[id, s], partial_filters=[simple_struct.id > Int64(2)]
971+ 01)Projection: get_field(simple_struct.s, Utf8("value")) + get_field(simple_struct.s, Utf8("value")) AS doubled
972+ 02)--Filter: simple_struct.id > Int64(2)
973+ 03)----TableScan: simple_struct projection=[id, s], partial_filters=[simple_struct.id > Int64(2)]
976974physical_plan
97797501)ProjectionExec: expr=[get_field(s@0, value) + get_field(s@0, value) as doubled]
97897602)--FilterExec: id@0 > 2, projection=[s@1]
0 commit comments