Closed
Description
Is your feature request related to a problem or challenge?
As discussed in #10534, @jayzhan211 added a UserDefinedSQLPlanner
in #11180 so that the translation of certain SQL sytanx to LogicalPlan
s and Expr
s are not hard coded in SqlToRel
but instead are controlled by a UserDefinedSQLPlanner
Now that we have the pattern, we need to move the other remaining functionality that is hard coded (e.g. looking up a function "date_part" by name) in SqlToRel to the UserDefinedSQLPlanner
Describe the solution you'd like
To rewrite with sql planner
- Implement user defined planner for extract #11215
- Implement user defined planner for
date_part
#11220 - Implement user defined planner for
create_struct
#11221 - Implement user defined planner for
create_named_struct
#11222 - Implement
ExprPlanner
forsql_overlay_to_expr
#11223 - Consider renaming
UserDefinedSQLPlanner
toExprPlanner
#11304 - sql_position_to_expr
- sql_substring_to_expr
- Move
sql_compound_identifier_to_expr
toExprPlanner
#11473 - Register SQL planners in
SessionState::new()
#11216 - Add supporting functions for user defined sql planners to FunctionRegistry #11294
- Consolidate SQL expr planners so there are one in each module (like a
UnicodePlanner
rather than aPositionPlanner
? #11305 - Revert "remove
derive(Copy)
fromOperator
(#11132)" #11341
Describe alternatives you've considered
No response
Additional context
Discussion is here: #10534