diff --git a/src/languages/transactsql/transactsql.formatter.ts b/src/languages/transactsql/transactsql.formatter.ts index 809d93ba0..a57189722 100644 --- a/src/languages/transactsql/transactsql.formatter.ts +++ b/src/languages/transactsql/transactsql.formatter.ts @@ -53,6 +53,10 @@ const tabularOnelineClauses = expandPhrases([ 'ALTER COLUMN', // - truncate: 'TRUNCATE TABLE', + // indexes + 'CREATE [UNIQUE] [CLUSTERED] INDEX', + // other statements + 'GO', // https://docs.microsoft.com/en-us/sql/t-sql/statements/statements?view=sql-server-ver15 'ADD SENSITIVITY CLASSIFICATION', 'ADD SIGNATURE', diff --git a/test/transactsql.test.ts b/test/transactsql.test.ts index e63a4a419..eac35bded 100644 --- a/test/transactsql.test.ts +++ b/test/transactsql.test.ts @@ -205,4 +205,17 @@ describe('TransactSqlFormatter', () => { tbl OUTPUT $action AS act; `); }); + + // Issue #814 + it('formats GO on a separate line', () => { + expect(format(`CREATE VIEW foo AS SELECT * FROM tbl GO CREATE INDEX bar`)).toBe(dedent` + CREATE VIEW foo AS + SELECT + * + FROM + tbl + GO + CREATE INDEX bar + `); + }); });