@@ -28,7 +28,6 @@ pub enum ParserError {
2828}
2929
3030pub type WildcardExcept = Vec < Ident > ;
31- pub type WildcardExclude = Vec < Ident > ;
3231pub type WildcardReplace = Vec < ( Expr , Ident ) > ;
3332
3433// Use `Parser::expected` instead, if possible
@@ -2872,19 +2871,17 @@ impl<'a> Parser<'a> {
28722871 pub fn parse_select_item ( & mut self ) -> Result < SelectItem , ParserError > {
28732872 let expr = self . parse_expr ( ) ?;
28742873 if let Expr :: Wildcard = expr {
2875- let ( except, exclude , replace) = self . parse_wildcard_modifiers ( ) ?;
2874+ let ( except, replace) = self . parse_wildcard_modifiers ( ) ?;
28762875 Ok ( SelectItem :: Wildcard {
28772876 prefix : None ,
28782877 except,
2879- exclude,
28802878 replace,
28812879 } )
28822880 } else if let Expr :: QualifiedWildcard ( prefix) = expr {
2883- let ( except, exclude , replace) = self . parse_wildcard_modifiers ( ) ?;
2881+ let ( except, replace) = self . parse_wildcard_modifiers ( ) ?;
28842882 Ok ( SelectItem :: Wildcard {
28852883 prefix : Some ( ObjectName ( prefix) ) ,
28862884 except,
2887- exclude,
28882885 replace,
28892886 } )
28902887 } else {
@@ -2911,7 +2908,7 @@ impl<'a> Parser<'a> {
29112908
29122909 pub fn parse_wildcard_modifiers (
29132910 & mut self ,
2914- ) -> Result < ( WildcardExcept , WildcardExclude , WildcardReplace ) , ParserError > {
2911+ ) -> Result < ( WildcardExcept , WildcardReplace ) , ParserError > {
29152912 let except = if self . parse_keyword ( Keyword :: EXCEPT ) {
29162913 self . expect_token ( & Token :: LParen ) ?;
29172914 let aliases = self . parse_comma_separated ( Parser :: parse_identifier) ?;
@@ -2920,26 +2917,15 @@ impl<'a> Parser<'a> {
29202917 } else {
29212918 vec ! [ ]
29222919 } ;
2923- let exclude = if self . parse_keyword ( Keyword :: EXCLUDE ) {
2924- if self . consume_token ( & Token :: LParen ) {
2925- let aliases = self . parse_comma_separated ( Parser :: parse_identifier) ?;
2926- self . expect_token ( & Token :: RParen ) ?;
2927- aliases
2928- } else {
2929- vec ! [ self . parse_identifier( ) ?]
2930- }
2931- } else {
2932- vec ! [ ]
2933- } ;
2934- let replace = if self . parse_keyword ( Keyword :: REPLACE ) {
2920+ let replace = if self . parse_keyword ( Keyword :: EXCEPT ) {
29352921 self . expect_token ( & Token :: LParen ) ?;
29362922 let replace = self . parse_comma_separated ( Parser :: parse_replace_item) ?;
29372923 self . expect_token ( & Token :: RParen ) ?;
29382924 replace
29392925 } else {
29402926 vec ! [ ]
29412927 } ;
2942- Ok ( ( except, exclude , replace) )
2928+ Ok ( ( except, replace) )
29432929 }
29442930
29452931 /// Parse an expression, optionally followed by ASC or DESC (used in ORDER BY)
0 commit comments