@@ -31,7 +31,7 @@ use datafusion_expr::{
3131} ;
3232use datafusion_functions:: { string, unicode} ;
3333use datafusion_sql:: {
34- parser:: { DFParser , Statement as DFStatement } ,
34+ parser:: DFParser ,
3535 planner:: { NullOrdering , ParserOptions , SqlToRel } ,
3636} ;
3737
@@ -46,12 +46,7 @@ use datafusion_functions_nested::make_array::make_array_udf;
4646use datafusion_functions_window:: { rank:: rank_udwf, row_number:: row_number_udwf} ;
4747use insta:: { allow_duplicates, assert_snapshot} ;
4848use rstest:: rstest;
49- use sqlparser:: ast:: { Expr as SQLExpr , FunctionArg , Statement } ;
50- use sqlparser:: dialect:: {
51- AnsiDialect , BigQueryDialect , ClickHouseDialect , DatabricksDialect , Dialect ,
52- DuckDbDialect , GenericDialect , HiveDialect , MsSqlDialect , MySqlDialect ,
53- PostgreSqlDialect , RedshiftSqlDialect , SQLiteDialect , SnowflakeDialect ,
54- } ;
49+ use sqlparser:: dialect:: { Dialect , GenericDialect , HiveDialect , MySqlDialect } ;
5550
5651mod cases;
5752mod common;
@@ -3954,79 +3949,6 @@ fn test_double_quoted_literal_string() {
39543949 assert ! ( logical_plan( "SELECT \" 1\" " ) . is_err( ) ) ;
39553950}
39563951
3957- #[ test]
3958- fn test_named_arguments_with_dialects ( ) {
3959- let sql = "SELECT my_func(arg1 => 'value1')" ;
3960-
3961- // Returns None if the dialect doesn't support the => operator
3962- let extract_first_arg = |dialect : & dyn Dialect | -> Option < FunctionArg > {
3963- let mut statements = DFParser :: parse_sql_with_dialect ( sql, dialect) . ok ( ) ?;
3964-
3965- let statement = statements. pop_front ( ) . unwrap ( ) ;
3966- if let DFStatement :: Statement ( stmt) = statement {
3967- if let Statement :: Query ( query) = stmt. as_ref ( ) {
3968- if let sqlparser:: ast:: SetExpr :: Select ( select) = query. body . as_ref ( ) {
3969- let projection = & select. projection [ 0 ] ;
3970- if let sqlparser:: ast:: SelectItem :: UnnamedExpr ( SQLExpr :: Function (
3971- func,
3972- ) ) = projection
3973- {
3974- if let sqlparser:: ast:: FunctionArguments :: List ( arg_list) =
3975- & func. args
3976- {
3977- return Some ( arg_list. args [ 0 ] . clone ( ) ) ;
3978- }
3979- }
3980- }
3981- }
3982- }
3983- panic ! ( "Failed to extract function argument" ) ;
3984- } ;
3985-
3986- let arg = extract_first_arg ( & AnsiDialect { } ) ;
3987- assert ! ( matches!( arg, Some ( FunctionArg :: Named { name, .. } ) if name. value == "arg1" ) ) ;
3988-
3989- let arg = extract_first_arg ( & BigQueryDialect { } ) ;
3990- assert ! ( matches!( arg, Some ( FunctionArg :: Named { name, .. } ) if name. value == "arg1" ) ) ;
3991-
3992- let arg = extract_first_arg ( & ClickHouseDialect { } ) ;
3993- assert ! ( matches!( arg, Some ( FunctionArg :: Named { name, .. } ) if name. value == "arg1" ) ) ;
3994-
3995- let arg = extract_first_arg ( & DatabricksDialect { } ) ;
3996- assert ! ( matches!( arg, Some ( FunctionArg :: Named { name, .. } ) if name. value == "arg1" ) ) ;
3997-
3998- let arg = extract_first_arg ( & DuckDbDialect { } ) ;
3999- assert ! ( matches!( arg, Some ( FunctionArg :: Named { name, .. } ) if name. value == "arg1" ) ) ;
4000-
4001- let arg = extract_first_arg ( & GenericDialect { } ) ;
4002- assert ! ( matches!( arg, Some ( FunctionArg :: Named { name, .. } ) if name. value == "arg1" ) ) ;
4003-
4004- let arg = extract_first_arg ( & HiveDialect { } ) ;
4005- assert ! ( matches!( arg, Some ( FunctionArg :: Named { name, .. } ) if name. value == "arg1" ) ) ;
4006-
4007- let arg = extract_first_arg ( & MsSqlDialect { } ) ;
4008- assert ! ( arg. is_none( ) ) ;
4009-
4010- let arg = extract_first_arg ( & MySqlDialect { } ) ;
4011- assert ! ( matches!( arg, Some ( FunctionArg :: Named { name, .. } ) if name. value == "arg1" ) ) ;
4012-
4013- let arg = extract_first_arg ( & PostgreSqlDialect { } ) ;
4014- assert ! ( matches!(
4015- arg. as_ref( ) ,
4016- Some ( FunctionArg :: ExprNamed { name, .. } )
4017- if matches!( name, SQLExpr :: Identifier ( ident) if ident. value == "arg1" )
4018- ) ) ;
4019-
4020- let arg = extract_first_arg ( & RedshiftSqlDialect { } ) ;
4021- assert ! ( matches!( arg, Some ( FunctionArg :: Named { name, .. } ) if name. value == "arg1" ) ) ;
4022-
4023- let arg = extract_first_arg ( & SQLiteDialect { } ) ;
4024- assert ! ( matches!( arg, Some ( FunctionArg :: Named { name, .. } ) if name. value == "arg1" ) ) ;
4025-
4026- let arg = extract_first_arg ( & SnowflakeDialect { } ) ;
4027- assert ! ( matches!( arg, Some ( FunctionArg :: Named { name, .. } ) if name. value == "arg1" ) ) ;
4028- }
4029-
40303952#[ test]
40313953fn test_constant_expr_eq_join ( ) {
40323954 let sql = "SELECT id, order_id \
0 commit comments