From b340ed78cf1dea2c536554743fa2a3370740b6ff Mon Sep 17 00:00:00 2001 From: Ariel Mashraki <7413593+a8m@users.noreply.github.com> Date: Sun, 19 Mar 2023 12:07:41 +0200 Subject: [PATCH] dialect/sql: append selector alias only if defined (#3399) --- dialect/sql/builder.go | 6 ++++-- dialect/sql/builder_test.go | 5 +++++ 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/dialect/sql/builder.go b/dialect/sql/builder.go index 43568f013..e9257a02f 100644 --- a/dialect/sql/builder.go +++ b/dialect/sql/builder.go @@ -2824,8 +2824,10 @@ func (s *Selector) Query() (string, []any) { b.Wrap(func(b *Builder) { b.Join(t) }) - b.WriteString(" AS ") - b.Ident(t.as) + if t.as != "" { + b.WriteString(" AS ") + b.Ident(t.as) + } case *WithBuilder: t.SetDialect(s.dialect) b.Ident(t.Name()) diff --git a/dialect/sql/builder_test.go b/dialect/sql/builder_test.go index d49641eb4..7c3b1c3bf 100644 --- a/dialect/sql/builder_test.go +++ b/dialect/sql/builder_test.go @@ -1631,6 +1631,11 @@ WHERE (((("users"."id1" = "users"."id2" AND "users"."id1" <> "users"."id2") AND "users"."id1" > "users"."id2") AND "users"."id1" >= "users"."id2") AND "users"."id1" < "users"."id2") AND "users"."id1" <= "users"."id2"`, "\n", ""), }, + { + input: Select("name"). + From(Select("name", "age").From(Table("users"))), + wantQuery: "SELECT `name` FROM (SELECT `name`, `age` FROM `users`)", + }, } for i, tt := range tests { t.Run(strconv.Itoa(i), func(t *testing.T) {