alamb opened a new issue, #10326:
URL: https://github.com/apache/datafusion/issues/10326

   ### Is your feature request related to a problem or challenge?
   
   As @jonahgao  [points 
out](https://github.com/apache/datafusion/pull/10234#issuecomment-2087754040) 
in https://github.com/apache/datafusion/pull/10234:
   
   > `select x from foo order by y` can is covered by 
[add_missing_columns](https://github.com/apache/datafusion/blob/f8c623fe045d70a87eac8dc8620b74ff73be56d5/datafusion/expr/src/logical_plan/builder.rs#L437),
 by blindly adding columns into the descendant projection node. Another issue 
is that we should not run add_missing_columns for other SetExprs except SELECT.
   
   In https://github.com/apache/datafusion/pull/10234 @jonahgao  added a more 
general solution to use the merged schema from the select list and the FROM 
clause to handle resolving `HAVING` and set operations
   
   However, both codepaths now exist, which makes for fairly complicated 
planning process
   
   ### Describe the solution you'd like
   
   > I think that we should handle ORDER BY similarly to HAVING, use the merged 
schema, add the missing columns directly in the select list, instead of 
traversing the plan looking for projection node. Their processing logic may be 
reusable. I agree it might be good to have a broader discussion about this.
   
   @jonahgao  in 
https://github.com/apache/datafusion/pull/10234#issuecomment-2087760241
   
   ### Describe alternatives you've considered
   
   
   One alternative might be  
[add_missing_columns](https://github.com/apache/datafusion/blob/f8c623fe045d70a87eac8dc8620b74ff73be56d5/datafusion/expr/src/logical_plan/builder.rs#L437)
 and using the new `order_by_to_sort_expr` options added in 
https://github.com/apache/datafusion/pull/10234
   
   ### Additional context
   
   _No response_


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to