@@ -41,7 +41,7 @@ use serde::{Deserialize, Serialize};
4141use sqlparser_derive:: { Visit , VisitMut } ;
4242
4343use crate :: {
44- display_utils:: SpaceOrNewline ,
44+ display_utils:: { indented_list , SpaceOrNewline } ,
4545 tokenizer:: { Span , Token } ,
4646} ;
4747use crate :: {
@@ -4606,25 +4606,37 @@ impl fmt::Display for Statement {
46064606 returning,
46074607 or,
46084608 } => {
4609- write ! ( f , "UPDATE " ) ?;
4609+ f . write_str ( "UPDATE " ) ?;
46104610 if let Some ( or) = or {
4611- write ! ( f, "{or} " ) ?;
4611+ or. fmt ( f) ?;
4612+ f. write_str ( " " ) ?;
46124613 }
4613- write ! ( f , "{table}" ) ?;
4614+ table . fmt ( f ) ?;
46144615 if let Some ( UpdateTableFromKind :: BeforeSet ( from) ) = from {
4615- write ! ( f, " FROM {}" , display_comma_separated( from) ) ?;
4616+ SpaceOrNewline . fmt ( f) ?;
4617+ f. write_str ( "FROM" ) ?;
4618+ indented_list ( f, from) ?;
46164619 }
46174620 if !assignments. is_empty ( ) {
4618- write ! ( f, " SET {}" , display_comma_separated( assignments) ) ?;
4621+ SpaceOrNewline . fmt ( f) ?;
4622+ f. write_str ( "SET" ) ?;
4623+ indented_list ( f, assignments) ?;
46194624 }
46204625 if let Some ( UpdateTableFromKind :: AfterSet ( from) ) = from {
4621- write ! ( f, " FROM {}" , display_comma_separated( from) ) ?;
4626+ SpaceOrNewline . fmt ( f) ?;
4627+ f. write_str ( "FROM" ) ?;
4628+ indented_list ( f, from) ?;
46224629 }
46234630 if let Some ( selection) = selection {
4624- write ! ( f, " WHERE {selection}" ) ?;
4631+ SpaceOrNewline . fmt ( f) ?;
4632+ f. write_str ( "WHERE" ) ?;
4633+ SpaceOrNewline . fmt ( f) ?;
4634+ Indent ( selection) . fmt ( f) ?;
46254635 }
46264636 if let Some ( returning) = returning {
4627- write ! ( f, " RETURNING {}" , display_comma_separated( returning) ) ?;
4637+ SpaceOrNewline . fmt ( f) ?;
4638+ f. write_str ( "RETURNING" ) ?;
4639+ indented_list ( f, returning) ?;
46284640 }
46294641 Ok ( ( ) )
46304642 }
0 commit comments