From 1b3cc468b0ddbb2fb8429a6b992a4f141c54ebe1 Mon Sep 17 00:00:00 2001 From: git-hulk Date: Mon, 14 Sep 2026 18:05:28 +0800 Subject: [PATCH] Establish complete source spans and diagnostics Make token-backed AST spans complete half-open byte ranges for strings, placeholders, stars, function calls, query parameters, and set-operation queries. Improve caret rendering for tabs and Unicode while preserving byte-based diagnostic columns. Before applying this PR: Several exported spans excluded delimiters or were empty, including string literals, function calls, stars, placeholders, and query roots with set operations. Caret indentation treated byte offsets as display columns. After this PR: These nodes cover their complete source syntax, query roots contain their set-operation descendants, and diagnostic carets use terminal display width. AST golden files record the intentional span migration. Verification: - make test passed. - make update_test passed. - make lint remains blocked because golangci-lint v1.53.3 rejects the repository configuration format. Migration note: consumers relying on historical string or function end positions must adopt complete half-open byte spans. Assistant-By GPT-5 --- parser/ast.go | 4 +- parser/error.go | 14 +- parser/error_test.go | 9 + parser/lexer.go | 4 +- parser/parser_column.go | 10 +- parser/parser_query.go | 4 + parser/position_test.go | 40 +++- parser/source.go | 32 ++- .../output/quantile_functions.sql.golden.json | 2 +- .../output/set_statement.sql.golden.json | 6 +- .../output/settings_statement.sql.golden.json | 6 +- .../statement_boundaries.sql.golden.json | 2 +- .../ddl/output/alter_role.sql.golden.json | 36 +-- .../alter_table_add_column.sql.golden.json | 4 +- .../alter_table_add_index.sql.golden.json | 28 +-- ...alter_table_add_projection.sql.golden.json | 4 +- ...ter_table_attach_partition.sql.golden.json | 16 +- .../output/alter_table_delete.sql.golden.json | 8 +- ..._table_delete_with_cluster.sql.golden.json | 12 +- ...ter_table_detach_partition.sql.golden.json | 6 +- .../alter_table_drop_column.sql.golden.json | 4 +- ...able_drop_detach_partition.sql.golden.json | 4 +- .../alter_table_drop_index.sql.golden.json | 4 +- ...alter_table_drop_partition.sql.golden.json | 10 +- ...lter_table_drop_projection.sql.golden.json | 4 +- ...reeze_no_specify_partition.sql.golden.json | 4 +- ...ter_table_freeze_partition.sql.golden.json | 12 +- ...er_table_materialize_index.sql.golden.json | 8 +- ...ble_materialize_projection.sql.golden.json | 8 +- .../alter_table_modify_column.sql.golden.json | 8 +- ...lter_table_modify_order_by.sql.golden.json | 2 +- .../alter_table_remove_ttl.sql.golden.json | 4 +- ...er_table_replace_partition.sql.golden.json | 4 +- .../alter_table_settings.sql.golden.json | 4 +- .../output/alter_table_update.sql.golden.json | 12 +- ..._table_update_in_partition.sql.golden.json | 16 +- .../output/attach_table_basic.sql.golden.json | 20 +- .../ddl/output/bug_001.sql.golden.json | 66 ++--- .../testdata/ddl/output/check.sql.golden.json | 4 +- ...create_database_replicated.sql.golden.json | 16 +- .../create_dictionary_basic.sql.golden.json | 28 +-- ...e_dictionary_comprehensive.sql.golden.json | 32 +-- ...ate_dictionary_http_source.sql.golden.json | 32 +-- ...te_dictionary_with_comment.sql.golden.json | 34 +-- .../create_distributed_table.sql.golden.json | 6 +- ...te_materialized_view_basic.sql.golden.json | 40 ++-- ..._view_rmv_depends_on_multi.sql.golden.json | 8 +- ...ew_rmv_engine_with_columns.sql.golden.json | 16 +- ...iew_with_comment_before_as.sql.golden.json | 4 +- ...rialized_view_with_definer.sql.golden.json | 10 +- ...ew_with_empty_table_schema.sql.golden.json | 38 +-- ...materialized_view_with_gcs.sql.golden.json | 6 +- .../create_mv_with_not_op.sql.golden.json | 32 +-- .../create_mv_with_order_by.sql.golden.json | 4 +- ...ate_named_collection_basic.sql.golden.json | 14 +- ...te_named_collection_simple.sql.golden.json | 10 +- ...ed_collection_with_cluster.sql.golden.json | 14 +- ...ollection_with_overridable.sql.golden.json | 14 +- .../output/create_or_replace.sql.golden.json | 6 +- ..._replace_materialized_view.sql.golden.json | 2 +- .../ddl/output/create_role.sql.golden.json | 32 +-- ...e_table_as_remote_function.sql.golden.json | 32 +-- .../output/create_table_basic.sql.golden.json | 22 +- ...reate_table_json_typehints.sql.golden.json | 10 +- .../create_table_ttl_group_by.sql.golden.json | 18 +- ...ate_table_with_codec_delta.sql.golden.json | 18 +- ...ate_table_with_enum_fields.sql.golden.json | 54 ++--- .../create_table_with_index.sql.golden.json | 18 +- ..._with_keyword_partition_by.sql.golden.json | 4 +- ...create_table_with_nullable.sql.golden.json | 4 +- ...eate_table_with_on_clsuter.sql.golden.json | 20 +- ...reate_table_with_sample_by.sql.golden.json | 18 +- ...eate_table_with_ttl_policy.sql.golden.json | 20 +- ...te_table_with_tuple_fields.sql.golden.json | 12 +- .../create_table_with_uuid.sql.golden.json | 24 +- .../ddl/output/create_user.sql.golden.json | 110 ++++----- ..._view_on_cluster_with_uuid.sql.golden.json | 8 +- .../create_view_with_comment.sql.golden.json | 4 +- .../create_with_time_zone.sql.golden.json | 16 +- .../ddl/output/drop_role.sql.golden.json | 10 +- .../drop_table_with_no_delay.sql.golden.json | 4 +- ...drop_table_with_on_clsuter.sql.golden.json | 4 +- .../ddl/output/optimize.sql.golden.json | 54 ++--- .../ddl/output/rename.sql.golden.json | 36 +-- ...ow_databases_comprehensive.sql.golden.json | 8 +- ...ow_databases_format_string.sql.golden.json | 4 +- .../show_databases_ilike.sql.golden.json | 4 +- .../show_databases_like.sql.golden.json | 4 +- .../show_databases_not_ilike.sql.golden.json | 4 +- .../show_databases_not_like.sql.golden.json | 4 +- .../show_databases_outfile.sql.golden.json | 4 +- ...temporary_table_on_clsuter.sql.golden.json | 6 +- ..._table_modify_ttl_multiple.sql.golden.json | 4 +- .../alter_table_with_comment.sql.golden.json | 30 +-- .../create_column_with_ttl.sql.golden.json | 6 +- .../dml/output/delete_from.sql.golden.json | 4 +- .../dml/output/insert_values.sql.golden.json | 16 +- .../insert_with_placeholder.sql.golden.json | 32 +-- .../access_tuple_with_dot.sql.golden.json | 78 +++--- .../output/create_window_view.sql.golden.json | 8 +- .../query_with_expr_compare.sql.golden.json | 34 +-- .../select_case_multiple_when.sql.golden.json | 28 +-- .../select_case_when_exists.sql.golden.json | 24 +- .../select_case_when_regexp.sql.golden.json | 4 +- .../query/output/select_cast.sql.golden.json | 8 +- ...select_column_alias_string.sql.golden.json | 4 +- .../output/select_concat_expr.sql.golden.json | 36 +-- .../select_extract_with_regex.sql.golden.json | 16 +- ...lect_function_keyword_args.sql.golden.json | 226 +++++++++--------- .../output/select_intersect.sql.golden.json | 8 +- ...select_item_with_modifiers.sql.golden.json | 4 +- .../output/select_json_type.sql.golden.json | 30 +-- ...select_keyword_alias_no_as.sql.golden.json | 4 +- ...t_order_by_with_fill_basic.sql.golden.json | 4 +- ...order_by_with_fill_from_to.sql.golden.json | 4 +- ...r_by_with_fill_interpolate.sql.golden.json | 4 +- ...der_by_with_fill_staleness.sql.golden.json | 4 +- ...ct_order_by_with_fill_step.sql.golden.json | 8 +- .../output/select_regexp.sql.golden.json | 6 +- ...igned_number_after_bracket.sql.golden.json | 2 +- .../output/select_simple.sql.golden.json | 44 ++-- ...th_cte_with_column_aliases.sql.golden.json | 2 +- ...ct_simple_with_is_not_null.sql.golden.json | 22 +- ...select_simple_with_is_null.sql.golden.json | 22 +- ...t_table_function_arg_exprs.sql.golden.json | 48 ++-- .../select_when_condition.sql.golden.json | 8 +- ...elect_window_comprehensive.sql.golden.json | 12 +- .../select_window_params.sql.golden.json | 6 +- ..._with_global_join_locality.sql.golden.json | 30 +-- .../select_with_join_only.sql.golden.json | 2 +- ...t_with_keyword_in_group_by.sql.golden.json | 2 +- ...t_with_keyword_placeholder.sql.golden.json | 6 +- .../select_with_left_join.sql.golden.json | 2 +- ...multi_array_and_inner_join.sql.golden.json | 40 ++-- ...lect_with_multi_array_join.sql.golden.json | 14 +- .../select_with_multi_except.sql.golden.json | 4 +- .../select_with_multi_join.sql.golden.json | 12 +- ...ct_with_multi_line_comment.sql.golden.json | 2 +- .../select_with_multi_union.sql.golden.json | 4 +- ..._with_multi_union_distinct.sql.golden.json | 4 +- ...t_with_parenthesized_union.sql.golden.json | 52 ++-- .../select_with_placeholder.sql.golden.json | 6 +- ...elect_with_query_parameter.sql.golden.json | 26 +- ...s_additional_table_filters.sql.golden.json | 56 ++--- ...ct_with_single_quote_table.sql.golden.json | 14 +- .../select_with_string_expr.sql.golden.json | 2 +- ...select_with_union_distinct.sql.golden.json | 2 +- .../select_with_variable.sql.golden.json | 2 +- 148 files changed, 1284 insertions(+), 1199 deletions(-) diff --git a/parser/ast.go b/parser/ast.go index 2fe578cf..304e526d 100644 --- a/parser/ast.go +++ b/parser/ast.go @@ -2942,7 +2942,7 @@ func (q *QueryParam) Pos() Pos { } func (q *QueryParam) End() Pos { - return q.RBracePos + return q.RBracePos + 1 } func (q *QueryParam) Accept(visitor ASTVisitor) error { @@ -3015,7 +3015,7 @@ func (f *FunctionExpr) Pos() Pos { } func (f *FunctionExpr) End() Pos { - return f.Params.RightParenPos + return f.Params.RightParenPos + 1 } func (f *FunctionExpr) Accept(visitor ASTVisitor) error { diff --git a/parser/error.go b/parser/error.go index 5e6ee189..3f6dbac3 100644 --- a/parser/error.go +++ b/parser/error.go @@ -70,12 +70,18 @@ func (e *ParseError) renderCaret(b *strings.Builder) { line := e.starts.lineText(e.input, e.Line) b.WriteString(line) b.WriteByte('\n') - for i := 1; i < e.Column; i++ { - b.WriteByte(' ') + lineStart := e.starts[int(e.Line)-1] + offset := int(e.Pos) - lineStart + if offset < 0 { + offset = 0 } + if offset > len(line) { + offset = len(line) + } + b.WriteString(strings.Repeat(" ", displayWidth(line[:offset]))) width := 1 - if e.Got != nil && len(e.Got.String) > width { - width = len(e.Got.String) + if e.Got != nil && displayWidth(e.Got.String) > width { + width = displayWidth(e.Got.String) } b.WriteString(strings.Repeat("^", width)) b.WriteByte('\n') diff --git a/parser/error_test.go b/parser/error_test.go index b926f7d0..525ee860 100644 --- a/parser/error_test.go +++ b/parser/error_test.go @@ -79,6 +79,15 @@ func TestParseError_LexicalFailure(t *testing.T) { } } +func TestParseError_CaretUsesDisplayWidth(t *testing.T) { + _, err := NewParser("SELECT\t中文 FROM 123").ParseStmts() + require.Error(t, err) + var pe *ParseError + require.ErrorAs(t, err, &pe) + require.Equal(t, 1, pe.Line) + require.Contains(t, pe.Error(), "SELECT\t中文 FROM 123\n ^") +} + func TestParser_TokenConsumptionError(t *testing.T) { for _, tc := range []struct { name string diff --git a/parser/lexer.go b/parser/lexer.go index c8a861e6..ac54dd6a 100644 --- a/parser/lexer.go +++ b/parser/lexer.go @@ -301,8 +301,8 @@ func (l *Lexer) consumeString() error { l.currentToken = &Token{ Kind: TokenKindString, String: l.slice(1, i), - Pos: Pos(l.offset + 1), - End: Pos(l.offset + i), + Pos: Pos(l.offset), + End: Pos(l.offset + i + 1), } l.skipN(i + 1) return nil diff --git a/parser/parser_column.go b/parser/parser_column.go index a9c39e13..b6301934 100644 --- a/parser/parser_column.go +++ b/parser/parser_column.go @@ -633,10 +633,11 @@ func (p *Parser) parseColumnExpr(pos Pos) (Expr, error) { //nolint:funlen return p.parseNumber(p.Pos()) case p.matchTokenKind(TokenKindQuestionMark): // Placeholder `?` + curToken := p.current() _ = p.lexer.consumeToken() return &PlaceHolder{ - PlaceholderPos: pos, - PlaceHolderEnd: pos, + PlaceholderPos: curToken.Pos, + PlaceHolderEnd: curToken.End, Type: string(TokenKindQuestionMark), }, nil default: @@ -1884,12 +1885,13 @@ func (p *Parser) parseEnumValueExpr(pos Pos) (*EnumValue, error) { } func (p *Parser) parseColumnStar(pos Pos) (*Ident, error) { + curToken := p.current() if err := p.expectTokenKind("*"); err != nil { return nil, err } return &Ident{ - NamePos: pos, - NameEnd: pos, + NamePos: curToken.Pos, + NameEnd: curToken.End, Name: "*", }, nil } diff --git a/parser/parser_query.go b/parser/parser_query.go index 6d126215..41263f57 100644 --- a/parser/parser_query.go +++ b/parser/parser_query.go @@ -1148,12 +1148,14 @@ func (p *Parser) parseSetOperation(selectStmt *SelectQuery) error { return err } selectStmt.UnionAll = unionAllExpr + selectStmt.StatementEnd = unionAllExpr.End() case p.tryConsumeKeywords(KeywordDistinct): unionDistinctExpr, err := p.parseSelectQuery(p.Pos()) if err != nil { return err } selectStmt.UnionDistinct = unionDistinctExpr + selectStmt.StatementEnd = unionDistinctExpr.End() default: return fmt.Errorf("expected ALL or DISTINCT, got %s", p.currentTokenKind()) } @@ -1163,12 +1165,14 @@ func (p *Parser) parseSetOperation(selectStmt *SelectQuery) error { return err } selectStmt.Except = exceptExpr + selectStmt.StatementEnd = exceptExpr.End() case p.tryConsumeKeywords(KeywordIntersect): intersectExpr, err := p.parseSelectQuery(p.Pos()) if err != nil { return err } selectStmt.Intersect = intersectExpr + selectStmt.StatementEnd = intersectExpr.End() } return nil diff --git a/parser/position_test.go b/parser/position_test.go index a4625727..62899756 100644 --- a/parser/position_test.go +++ b/parser/position_test.go @@ -97,7 +97,8 @@ func TestKeywordArgFunctionPositions(t *testing.T) { stmt := parseOneStmt(t, sql).(*SelectQuery) fn := stmt.SelectItems[0].Expr.(*FunctionExpr) require.Equal(t, Pos(7), fn.Pos()) - require.Equal(t, Pos(len(sql)-1), fn.End(), "ends on the closing paren, as any call does") + // Spans are complete half-open source ranges, so the closing paren is included. + require.Equal(t, Pos(len(sql)), fn.End()) from := fn.Params.Items.Items[0].(*ColumnExpr).Expr.(*BinaryOperation) require.Equal(t, "BOTH", sql[12:16]) @@ -110,8 +111,8 @@ func TestKeywordArgFunctionPositions(t *testing.T) { modifier := from.LeftExpr.(*UnaryExpr) require.Equal(t, Pos(12), modifier.Pos()) require.Equal(t, modifier.Expr.End(), modifier.End()) - require.Equal(t, Pos(18), modifier.Expr.Pos()) - require.Equal(t, Pos(19), modifier.Expr.End()) + require.Equal(t, Pos(17), modifier.Expr.Pos()) + require.Equal(t, Pos(20), modifier.Expr.End()) } func TestJoinLocalityIsInsideTheJoinSpan(t *testing.T) { @@ -123,3 +124,36 @@ func TestJoinLocalityIsInsideTheJoinSpan(t *testing.T) { require.Equal(t, Pos(17), join.Pos()) require.Equal(t, Pos(len(sql)), join.End()) } + +func TestSourceSpansCoverReportedNodes(t *testing.T) { + for _, tc := range []struct { + sql string + wantSlice string + get func(Expr) Expr + }{ + {"SELECT *", "*", func(e Expr) Expr { return e.(*SelectQuery).SelectItems[0].Expr }}, + {"SELECT ?", "?", func(e Expr) Expr { return e.(*SelectQuery).SelectItems[0].Expr }}, + {"SELECT 'abc'", "'abc'", func(e Expr) Expr { return e.(*SelectQuery).SelectItems[0].Expr }}, + {"SELECT f(1)", "f(1)", func(e Expr) Expr { return e.(*SelectQuery).SelectItems[0].Expr }}, + } { + t.Run(tc.sql, func(t *testing.T) { + stmt := parseOneStmt(t, tc.sql) + node := tc.get(stmt) + require.GreaterOrEqual(t, node.Pos(), Pos(0)) + require.LessOrEqual(t, node.Pos(), node.End()) + require.LessOrEqual(t, node.End(), Pos(len(tc.sql))) + require.Equal(t, tc.wantSlice, tc.sql[node.Pos():node.End()]) + }) + } +} + +func TestSelectQuerySpanContainsSetOperations(t *testing.T) { + sql := "SELECT 1 INTERSECT SELECT 2 UNION ALL SELECT 3" + root := parseOneStmt(t, sql).(*SelectQuery) + require.Equal(t, Pos(len(sql)), root.End()) + require.NotNil(t, root.Intersect) + require.NotNil(t, root.Intersect.UnionAll) + require.LessOrEqual(t, root.Pos(), root.Intersect.Pos()) + require.LessOrEqual(t, root.Intersect.End(), root.End()) + require.LessOrEqual(t, root.Intersect.UnionAll.End(), root.End()) +} diff --git a/parser/source.go b/parser/source.go index 4499598b..f03ae53d 100644 --- a/parser/source.go +++ b/parser/source.go @@ -1,6 +1,10 @@ package parser -import "sort" +import ( + "sort" + "unicode" + "unicode/utf8" +) // lineStarts holds the byte offset where each line of the input begins // (lineStarts[i] is the start of 0-based line i). It is built once so that @@ -45,3 +49,29 @@ func (s lineStarts) lineText(input string, line int) string { } return input[start:end] } + +func displayWidth(text string) int { + width := 0 + for len(text) > 0 { + r, size := utf8.DecodeRuneInString(text) + switch { + case r == '\t': + width += 8 - width%8 + case unicode.Is(unicode.Mn, r) || unicode.Is(unicode.Me, r): + case eastAsianWide(r): + width += 2 + default: + width++ + } + text = text[size:] + } + return width +} + +func eastAsianWide(r rune) bool { + return r >= 0x1100 && (r <= 0x115f || r == 0x2329 || r == 0x232a || + (r >= 0x2e80 && r <= 0xa4cf) || (r >= 0xac00 && r <= 0xd7a3) || + (r >= 0xf900 && r <= 0xfaff) || (r >= 0xfe10 && r <= 0xfe19) || + (r >= 0xfe30 && r <= 0xfe6f) || (r >= 0xff00 && r <= 0xff60) || + (r >= 0xffe0 && r <= 0xffe6)) +} diff --git a/parser/testdata/basic/output/quantile_functions.sql.golden.json b/parser/testdata/basic/output/quantile_functions.sql.golden.json index adfa8cfe..6e7a2598 100644 --- a/parser/testdata/basic/output/quantile_functions.sql.golden.json +++ b/parser/testdata/basic/output/quantile_functions.sql.golden.json @@ -1,7 +1,7 @@ [ { "SelectPos": 0, - "StatementEnd": 43, + "StatementEnd": 44, "With": null, "Top": null, "HasDistinct": false, diff --git a/parser/testdata/basic/output/set_statement.sql.golden.json b/parser/testdata/basic/output/set_statement.sql.golden.json index bb91531a..e113f8ed 100644 --- a/parser/testdata/basic/output/set_statement.sql.golden.json +++ b/parser/testdata/basic/output/set_statement.sql.golden.json @@ -50,7 +50,7 @@ "SetPos": 81, "Settings": { "SettingsPos": 85, - "ListEnd": 132, + "ListEnd": 133, "Items": [ { "SettingsPos": 85, @@ -61,8 +61,8 @@ "NameEnd": 124 }, "Expr": { - "LiteralPos": 128, - "LiteralEnd": 132, + "LiteralPos": 127, + "LiteralEnd": 133, "Literal": "true" } } diff --git a/parser/testdata/basic/output/settings_statement.sql.golden.json b/parser/testdata/basic/output/settings_statement.sql.golden.json index 8c074f0d..f0b8b203 100644 --- a/parser/testdata/basic/output/settings_statement.sql.golden.json +++ b/parser/testdata/basic/output/settings_statement.sql.golden.json @@ -50,7 +50,7 @@ "SetPos": 91, "Settings": { "SettingsPos": 100, - "ListEnd": 147, + "ListEnd": 148, "Items": [ { "SettingsPos": 100, @@ -61,8 +61,8 @@ "NameEnd": 139 }, "Expr": { - "LiteralPos": 143, - "LiteralEnd": 147, + "LiteralPos": 142, + "LiteralEnd": 148, "Literal": "true" } } diff --git a/parser/testdata/basic/output/statement_boundaries.sql.golden.json b/parser/testdata/basic/output/statement_boundaries.sql.golden.json index 32112ff2..7dd4183d 100644 --- a/parser/testdata/basic/output/statement_boundaries.sql.golden.json +++ b/parser/testdata/basic/output/statement_boundaries.sql.golden.json @@ -1,7 +1,7 @@ [ { "SelectPos": 0, - "StatementEnd": 34, + "StatementEnd": 35, "With": null, "Top": null, "HasDistinct": false, diff --git a/parser/testdata/ddl/output/alter_role.sql.golden.json b/parser/testdata/ddl/output/alter_role.sql.golden.json index 2c945cab..8d56bd46 100644 --- a/parser/testdata/ddl/output/alter_role.sql.golden.json +++ b/parser/testdata/ddl/output/alter_role.sql.golden.json @@ -136,7 +136,7 @@ }, { "AlterPos": 208, - "StatementEnd": 253, + "StatementEnd": 254, "IfExists": false, "RoleRenamePairs": [ { @@ -166,8 +166,8 @@ }, "Operation": "", "Value": { - "LiteralPos": 246, - "LiteralEnd": 253, + "LiteralPos": 245, + "LiteralEnd": 254, "Literal": "default" } } @@ -521,8 +521,8 @@ }, "Operation": "", "Value": { - "LiteralPos": 661, - "LiteralEnd": 668, + "LiteralPos": 660, + "LiteralEnd": 669, "Literal": "default" } } @@ -637,7 +637,7 @@ }, { "AlterPos": 778, - "StatementEnd": 823, + "StatementEnd": 824, "IfExists": false, "RoleRenamePairs": [ { @@ -667,8 +667,8 @@ }, "Operation": "", "Value": { - "LiteralPos": 816, - "LiteralEnd": 823, + "LiteralPos": 815, + "LiteralEnd": 824, "Literal": "default" } } @@ -787,8 +787,8 @@ }, "Operation": "", "Value": { - "LiteralPos": 952, - "LiteralEnd": 959, + "LiteralPos": 951, + "LiteralEnd": 960, "Literal": "default" } } @@ -871,7 +871,7 @@ }, { "AlterPos": 1035, - "StatementEnd": 1057, + "StatementEnd": 1058, "IfExists": false, "RoleRenamePairs": [ { @@ -883,21 +883,21 @@ "NameEnd": 1054 }, "Scope": { - "LiteralPos": 1056, - "LiteralEnd": 1057, + "LiteralPos": 1055, + "LiteralEnd": 1058, "Literal": "%" }, "OnCluster": null }, "NewName": null, - "StatementEnd": 1057 + "StatementEnd": 1058 } ], "Settings": null }, { "AlterPos": 1060, - "StatementEnd": 1093, + "StatementEnd": 1094, "IfExists": false, "RoleRenamePairs": [ { @@ -909,14 +909,14 @@ "NameEnd": 1079 }, "Scope": { - "LiteralPos": 1081, - "LiteralEnd": 1093, + "LiteralPos": 1080, + "LiteralEnd": 1094, "Literal": "%.myhost.com" }, "OnCluster": null }, "NewName": null, - "StatementEnd": 1093 + "StatementEnd": 1094 } ], "Settings": null diff --git a/parser/testdata/ddl/output/alter_table_add_column.sql.golden.json b/parser/testdata/ddl/output/alter_table_add_column.sql.golden.json index d7aeda33..32284104 100644 --- a/parser/testdata/ddl/output/alter_table_add_column.sql.golden.json +++ b/parser/testdata/ddl/output/alter_table_add_column.sql.golden.json @@ -19,8 +19,8 @@ "OnCluster": { "OnPos": 30, "Expr": { - "LiteralPos": 42, - "LiteralEnd": 57, + "LiteralPos": 41, + "LiteralEnd": 58, "Literal": "default_cluster" } }, diff --git a/parser/testdata/ddl/output/alter_table_add_index.sql.golden.json b/parser/testdata/ddl/output/alter_table_add_index.sql.golden.json index 3670fa8c..eea7b6ed 100644 --- a/parser/testdata/ddl/output/alter_table_add_index.sql.golden.json +++ b/parser/testdata/ddl/output/alter_table_add_index.sql.golden.json @@ -19,8 +19,8 @@ "OnCluster": { "OnPos": 30, "Expr": { - "LiteralPos": 42, - "LiteralEnd": 57, + "LiteralPos": 41, + "LiteralEnd": 58, "Literal": "default_cluster" } }, @@ -104,8 +104,8 @@ "OnCluster": { "OnPos": 142, "Expr": { - "LiteralPos": 154, - "LiteralEnd": 169, + "LiteralPos": 153, + "LiteralEnd": 170, "Literal": "default_cluster" } }, @@ -184,8 +184,8 @@ "OnCluster": { "OnPos": 258, "Expr": { - "LiteralPos": 270, - "LiteralEnd": 285, + "LiteralPos": 269, + "LiteralEnd": 286, "Literal": "default_cluster" } }, @@ -264,8 +264,8 @@ "OnCluster": { "OnPos": 378, "Expr": { - "LiteralPos": 390, - "LiteralEnd": 405, + "LiteralPos": 389, + "LiteralEnd": 406, "Literal": "default_cluster" } }, @@ -356,8 +356,8 @@ "OnCluster": { "OnPos": 511, "Expr": { - "LiteralPos": 523, - "LiteralEnd": 538, + "LiteralPos": 522, + "LiteralEnd": 539, "Literal": "default_cluster" } }, @@ -454,8 +454,8 @@ "OnCluster": { "OnPos": 645, "Expr": { - "LiteralPos": 657, - "LiteralEnd": 672, + "LiteralPos": 656, + "LiteralEnd": 673, "Literal": "default_cluster" } }, @@ -544,8 +544,8 @@ "OnCluster": { "OnPos": 791, "Expr": { - "LiteralPos": 803, - "LiteralEnd": 818, + "LiteralPos": 802, + "LiteralEnd": 819, "Literal": "default_cluster" } }, diff --git a/parser/testdata/ddl/output/alter_table_add_projection.sql.golden.json b/parser/testdata/ddl/output/alter_table_add_projection.sql.golden.json index 70fb1b4c..91c0ada8 100644 --- a/parser/testdata/ddl/output/alter_table_add_projection.sql.golden.json +++ b/parser/testdata/ddl/output/alter_table_add_projection.sql.golden.json @@ -35,7 +35,7 @@ "With": null, "SelectColumns": { "ListPos": 84, - "ListEnd": 84, + "ListEnd": 85, "HasDistinct": false, "Items": [ { @@ -43,7 +43,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 84, - "NameEnd": 84 + "NameEnd": 85 }, "Alias": null } diff --git a/parser/testdata/ddl/output/alter_table_attach_partition.sql.golden.json b/parser/testdata/ddl/output/alter_table_attach_partition.sql.golden.json index 394bf7b8..4a79260e 100644 --- a/parser/testdata/ddl/output/alter_table_attach_partition.sql.golden.json +++ b/parser/testdata/ddl/output/alter_table_attach_partition.sql.golden.json @@ -1,7 +1,7 @@ [ { "AlterPos": 0, - "StatementEnd": 43, + "StatementEnd": 44, "TableIdentifier": { "Database": null, "Table": { @@ -18,8 +18,8 @@ "Partition": { "PartitionPos": 24, "Expr": { - "LiteralPos": 35, - "LiteralEnd": 43, + "LiteralPos": 34, + "LiteralEnd": 44, "Literal": "20210114" }, "ID": null, @@ -49,8 +49,8 @@ "Partition": { "PartitionPos": 70, "Expr": { - "LiteralPos": 81, - "LiteralEnd": 89, + "LiteralPos": 80, + "LiteralEnd": 90, "Literal": "20210114" }, "ID": null, @@ -71,7 +71,7 @@ }, { "AlterPos": 103, - "StatementEnd": 149, + "StatementEnd": 150, "TableIdentifier": { "Database": null, "Table": { @@ -89,8 +89,8 @@ "PartitionPos": 127, "Expr": null, "ID": { - "LiteralPos": 141, - "LiteralEnd": 149, + "LiteralPos": 140, + "LiteralEnd": 150, "Literal": "20210114" }, "All": false diff --git a/parser/testdata/ddl/output/alter_table_delete.sql.golden.json b/parser/testdata/ddl/output/alter_table_delete.sql.golden.json index f93500a2..a95fa0c9 100644 --- a/parser/testdata/ddl/output/alter_table_delete.sql.golden.json +++ b/parser/testdata/ddl/output/alter_table_delete.sql.golden.json @@ -1,7 +1,7 @@ [ { "AlterPos": 0, - "StatementEnd": 61, + "StatementEnd": 62, "TableIdentifier": { "Database": { "Name": "test", @@ -20,7 +20,7 @@ "AlterExprs": [ { "DeletePos": 24, - "StatementEnd": 61, + "StatementEnd": 62, "WhereClause": { "LeftExpr": { "Name": "created_at", @@ -30,8 +30,8 @@ }, "Operation": "\u003c", "RightExpr": { - "LiteralPos": 51, - "LiteralEnd": 61, + "LiteralPos": 50, + "LiteralEnd": 62, "Literal": "2023-01-01" }, "HasGlobal": false, diff --git a/parser/testdata/ddl/output/alter_table_delete_with_cluster.sql.golden.json b/parser/testdata/ddl/output/alter_table_delete_with_cluster.sql.golden.json index efe19e7a..07a5b78e 100644 --- a/parser/testdata/ddl/output/alter_table_delete_with_cluster.sql.golden.json +++ b/parser/testdata/ddl/output/alter_table_delete_with_cluster.sql.golden.json @@ -1,7 +1,7 @@ [ { "AlterPos": 0, - "StatementEnd": 96, + "StatementEnd": 97, "TableIdentifier": { "Database": { "Name": "test", @@ -19,15 +19,15 @@ "OnCluster": { "OnPos": 24, "Expr": { - "LiteralPos": 36, - "LiteralEnd": 51, + "LiteralPos": 35, + "LiteralEnd": 52, "Literal": "default_cluster" } }, "AlterExprs": [ { "DeletePos": 53, - "StatementEnd": 96, + "StatementEnd": 97, "WhereClause": { "LeftExpr": { "LeftExpr": { @@ -56,8 +56,8 @@ }, "Operation": "=", "RightExpr": { - "LiteralPos": 89, - "LiteralEnd": 96, + "LiteralPos": 88, + "LiteralEnd": 97, "Literal": "deleted" }, "HasGlobal": false, diff --git a/parser/testdata/ddl/output/alter_table_detach_partition.sql.golden.json b/parser/testdata/ddl/output/alter_table_detach_partition.sql.golden.json index cfff0699..96e3d806 100644 --- a/parser/testdata/ddl/output/alter_table_detach_partition.sql.golden.json +++ b/parser/testdata/ddl/output/alter_table_detach_partition.sql.golden.json @@ -1,7 +1,7 @@ [ { "AlterPos": 0, - "StatementEnd": 48, + "StatementEnd": 49, "TableIdentifier": { "Database": { "Name": "db", @@ -23,8 +23,8 @@ "Partition": { "PartitionPos": 27, "Expr": { - "LiteralPos": 38, - "LiteralEnd": 48, + "LiteralPos": 37, + "LiteralEnd": 49, "Literal": "2021-10-01" }, "ID": null, diff --git a/parser/testdata/ddl/output/alter_table_drop_column.sql.golden.json b/parser/testdata/ddl/output/alter_table_drop_column.sql.golden.json index 94918036..7abed222 100644 --- a/parser/testdata/ddl/output/alter_table_drop_column.sql.golden.json +++ b/parser/testdata/ddl/output/alter_table_drop_column.sql.golden.json @@ -19,8 +19,8 @@ "OnCluster": { "OnPos": 30, "Expr": { - "LiteralPos": 42, - "LiteralEnd": 57, + "LiteralPos": 41, + "LiteralEnd": 58, "Literal": "default_cluster" } }, diff --git a/parser/testdata/ddl/output/alter_table_drop_detach_partition.sql.golden.json b/parser/testdata/ddl/output/alter_table_drop_detach_partition.sql.golden.json index d9c9df08..9cb5d289 100644 --- a/parser/testdata/ddl/output/alter_table_drop_detach_partition.sql.golden.json +++ b/parser/testdata/ddl/output/alter_table_drop_detach_partition.sql.golden.json @@ -24,8 +24,8 @@ "Partition": { "PartitionPos": 99, "Expr": { - "LiteralPos": 110, - "LiteralEnd": 120, + "LiteralPos": 109, + "LiteralEnd": 121, "Literal": "2022-05-24" }, "ID": null, diff --git a/parser/testdata/ddl/output/alter_table_drop_index.sql.golden.json b/parser/testdata/ddl/output/alter_table_drop_index.sql.golden.json index ed8cd50a..32d5fe94 100644 --- a/parser/testdata/ddl/output/alter_table_drop_index.sql.golden.json +++ b/parser/testdata/ddl/output/alter_table_drop_index.sql.golden.json @@ -19,8 +19,8 @@ "OnCluster": { "OnPos": 29, "Expr": { - "LiteralPos": 41, - "LiteralEnd": 56, + "LiteralPos": 40, + "LiteralEnd": 57, "Literal": "default_cluster" } }, diff --git a/parser/testdata/ddl/output/alter_table_drop_partition.sql.golden.json b/parser/testdata/ddl/output/alter_table_drop_partition.sql.golden.json index cada49a0..2daa7eac 100644 --- a/parser/testdata/ddl/output/alter_table_drop_partition.sql.golden.json +++ b/parser/testdata/ddl/output/alter_table_drop_partition.sql.golden.json @@ -1,7 +1,7 @@ [ { "AlterPos": 0, - "StatementEnd": 79, + "StatementEnd": 80, "TableIdentifier": { "Database": { "Name": "test", @@ -19,8 +19,8 @@ "OnCluster": { "OnPos": 24, "Expr": { - "LiteralPos": 36, - "LiteralEnd": 51, + "LiteralPos": 35, + "LiteralEnd": 52, "Literal": "default_cluster" } }, @@ -31,8 +31,8 @@ "Partition": { "PartitionPos": 58, "Expr": { - "LiteralPos": 69, - "LiteralEnd": 79, + "LiteralPos": 68, + "LiteralEnd": 80, "Literal": "2023-07-18" }, "ID": null, diff --git a/parser/testdata/ddl/output/alter_table_drop_projection.sql.golden.json b/parser/testdata/ddl/output/alter_table_drop_projection.sql.golden.json index 0e0268f7..3302efb0 100644 --- a/parser/testdata/ddl/output/alter_table_drop_projection.sql.golden.json +++ b/parser/testdata/ddl/output/alter_table_drop_projection.sql.golden.json @@ -19,8 +19,8 @@ "OnCluster": { "OnPos": 29, "Expr": { - "LiteralPos": 41, - "LiteralEnd": 56, + "LiteralPos": 40, + "LiteralEnd": 57, "Literal": "default_cluster" } }, diff --git a/parser/testdata/ddl/output/alter_table_freeze_no_specify_partition.sql.golden.json b/parser/testdata/ddl/output/alter_table_freeze_no_specify_partition.sql.golden.json index 1e5f52c3..2894916a 100644 --- a/parser/testdata/ddl/output/alter_table_freeze_no_specify_partition.sql.golden.json +++ b/parser/testdata/ddl/output/alter_table_freeze_no_specify_partition.sql.golden.json @@ -19,8 +19,8 @@ "OnCluster": { "OnPos": 24, "Expr": { - "LiteralPos": 36, - "LiteralEnd": 51, + "LiteralPos": 35, + "LiteralEnd": 52, "Literal": "default_cluster" } }, diff --git a/parser/testdata/ddl/output/alter_table_freeze_partition.sql.golden.json b/parser/testdata/ddl/output/alter_table_freeze_partition.sql.golden.json index c77ff90d..485ccc6e 100644 --- a/parser/testdata/ddl/output/alter_table_freeze_partition.sql.golden.json +++ b/parser/testdata/ddl/output/alter_table_freeze_partition.sql.golden.json @@ -1,7 +1,7 @@ [ { "AlterPos": 0, - "StatementEnd": 81, + "StatementEnd": 82, "TableIdentifier": { "Database": { "Name": "test", @@ -19,20 +19,20 @@ "OnCluster": { "OnPos": 24, "Expr": { - "LiteralPos": 36, - "LiteralEnd": 51, + "LiteralPos": 35, + "LiteralEnd": 52, "Literal": "default_cluster" } }, "AlterExprs": [ { "FreezePos": 53, - "StatementEnd": 81, + "StatementEnd": 82, "Partition": { "PartitionPos": 60, "Expr": { - "LiteralPos": 71, - "LiteralEnd": 81, + "LiteralPos": 70, + "LiteralEnd": 82, "Literal": "2023-07-18" }, "ID": null, diff --git a/parser/testdata/ddl/output/alter_table_materialize_index.sql.golden.json b/parser/testdata/ddl/output/alter_table_materialize_index.sql.golden.json index 0605d79c..03039ae4 100644 --- a/parser/testdata/ddl/output/alter_table_materialize_index.sql.golden.json +++ b/parser/testdata/ddl/output/alter_table_materialize_index.sql.golden.json @@ -1,7 +1,7 @@ [ { "AlterPos": 0, - "StatementEnd": 91, + "StatementEnd": 92, "TableIdentifier": { "Database": null, "Table": { @@ -15,7 +15,7 @@ "AlterExprs": [ { "MaterializedPos": 25, - "StatementEnd": 91, + "StatementEnd": 92, "IfExists": true, "IndexName": { "Ident": { @@ -29,8 +29,8 @@ "Partition": { "PartitionPos": 72, "Expr": { - "LiteralPos": 83, - "LiteralEnd": 91, + "LiteralPos": 82, + "LiteralEnd": 92, "Literal": "20240403" }, "ID": null, diff --git a/parser/testdata/ddl/output/alter_table_materialize_projection.sql.golden.json b/parser/testdata/ddl/output/alter_table_materialize_projection.sql.golden.json index 3fc8fa36..8d8c2ad1 100644 --- a/parser/testdata/ddl/output/alter_table_materialize_projection.sql.golden.json +++ b/parser/testdata/ddl/output/alter_table_materialize_projection.sql.golden.json @@ -1,7 +1,7 @@ [ { "AlterPos": 0, - "StatementEnd": 101, + "StatementEnd": 102, "TableIdentifier": { "Database": null, "Table": { @@ -15,7 +15,7 @@ "AlterExprs": [ { "MaterializedPos": 25, - "StatementEnd": 101, + "StatementEnd": 102, "IfExists": true, "ProjectionName": { "Ident": { @@ -29,8 +29,8 @@ "Partition": { "PartitionPos": 82, "Expr": { - "LiteralPos": 93, - "LiteralEnd": 101, + "LiteralPos": 92, + "LiteralEnd": 102, "Literal": "20240403" }, "ID": null, diff --git a/parser/testdata/ddl/output/alter_table_modify_column.sql.golden.json b/parser/testdata/ddl/output/alter_table_modify_column.sql.golden.json index 6c039e51..dde048eb 100644 --- a/parser/testdata/ddl/output/alter_table_modify_column.sql.golden.json +++ b/parser/testdata/ddl/output/alter_table_modify_column.sql.golden.json @@ -1,7 +1,7 @@ [ { "AlterPos": 0, - "StatementEnd": 52, + "StatementEnd": 53, "TableIdentifier": { "Database": null, "Table": { @@ -15,11 +15,11 @@ "AlterExprs": [ { "ModifyPos": 15, - "StatementEnd": 52, + "StatementEnd": 53, "IfExists": false, "Column": { "NamePos": 29, - "ColumnEnd": 52, + "ColumnEnd": 53, "Name": { "Ident": { "Name": "f1", @@ -46,7 +46,7 @@ "TTL": null, "Comment": { "LiteralPos": 39, - "LiteralEnd": 52, + "LiteralEnd": 53, "Literal": "test" }, "CompressionCodec": null diff --git a/parser/testdata/ddl/output/alter_table_modify_order_by.sql.golden.json b/parser/testdata/ddl/output/alter_table_modify_order_by.sql.golden.json index ecc953ee..b4e1b8de 100644 --- a/parser/testdata/ddl/output/alter_table_modify_order_by.sql.golden.json +++ b/parser/testdata/ddl/output/alter_table_modify_order_by.sql.golden.json @@ -112,7 +112,7 @@ "RightParenPos": 207, "Items": { "ListPos": 166, - "ListEnd": 206, + "ListEnd": 207, "HasDistinct": false, "Items": [ { diff --git a/parser/testdata/ddl/output/alter_table_remove_ttl.sql.golden.json b/parser/testdata/ddl/output/alter_table_remove_ttl.sql.golden.json index d0bdeff3..3922727b 100644 --- a/parser/testdata/ddl/output/alter_table_remove_ttl.sql.golden.json +++ b/parser/testdata/ddl/output/alter_table_remove_ttl.sql.golden.json @@ -19,8 +19,8 @@ "OnCluster": { "OnPos": 24, "Expr": { - "LiteralPos": 36, - "LiteralEnd": 51, + "LiteralPos": 35, + "LiteralEnd": 52, "Literal": "default_cluster" } }, diff --git a/parser/testdata/ddl/output/alter_table_replace_partition.sql.golden.json b/parser/testdata/ddl/output/alter_table_replace_partition.sql.golden.json index c415ec37..02b6e827 100644 --- a/parser/testdata/ddl/output/alter_table_replace_partition.sql.golden.json +++ b/parser/testdata/ddl/output/alter_table_replace_partition.sql.golden.json @@ -18,8 +18,8 @@ "Partition": { "PartitionPos": 23, "Expr": { - "LiteralPos": 34, - "LiteralEnd": 43, + "LiteralPos": 33, + "LiteralEnd": 44, "Literal": "partition" }, "ID": null, diff --git a/parser/testdata/ddl/output/alter_table_settings.sql.golden.json b/parser/testdata/ddl/output/alter_table_settings.sql.golden.json index e21f7147..9980e115 100644 --- a/parser/testdata/ddl/output/alter_table_settings.sql.golden.json +++ b/parser/testdata/ddl/output/alter_table_settings.sql.golden.json @@ -188,8 +188,8 @@ "OnCluster": { "OnPos": 200, "Expr": { - "LiteralPos": 212, - "LiteralEnd": 227, + "LiteralPos": 211, + "LiteralEnd": 228, "Literal": "default_cluster" } }, diff --git a/parser/testdata/ddl/output/alter_table_update.sql.golden.json b/parser/testdata/ddl/output/alter_table_update.sql.golden.json index b2a5fefa..e294b801 100644 --- a/parser/testdata/ddl/output/alter_table_update.sql.golden.json +++ b/parser/testdata/ddl/output/alter_table_update.sql.golden.json @@ -1,7 +1,7 @@ [ { "AlterPos": 0, - "StatementEnd": 91, + "StatementEnd": 92, "TableIdentifier": { "Database": { "Name": "test", @@ -20,7 +20,7 @@ "AlterExprs": [ { "UpdatePos": 23, - "StatementEnd": 91, + "StatementEnd": 92, "Assignments": [ { "AssignmentPos": 30, @@ -34,8 +34,8 @@ "DotIdent": null }, "Expr": { - "LiteralPos": 40, - "LiteralEnd": 46, + "LiteralPos": 39, + "LiteralEnd": 47, "Literal": "active" } }, @@ -81,8 +81,8 @@ }, "Operation": "=", "RightExpr": { - "LiteralPos": 84, - "LiteralEnd": 91, + "LiteralPos": 83, + "LiteralEnd": 92, "Literal": "pending" }, "HasGlobal": false, diff --git a/parser/testdata/ddl/output/alter_table_update_in_partition.sql.golden.json b/parser/testdata/ddl/output/alter_table_update_in_partition.sql.golden.json index b20b4da5..3f2057fc 100644 --- a/parser/testdata/ddl/output/alter_table_update_in_partition.sql.golden.json +++ b/parser/testdata/ddl/output/alter_table_update_in_partition.sql.golden.json @@ -1,7 +1,7 @@ [ { "AlterPos": 0, - "StatementEnd": 98, + "StatementEnd": 99, "TableIdentifier": { "Database": { "Name": "test", @@ -20,7 +20,7 @@ "AlterExprs": [ { "UpdatePos": 23, - "StatementEnd": 98, + "StatementEnd": 99, "Assignments": [ { "AssignmentPos": 30, @@ -34,8 +34,8 @@ "DotIdent": null }, "Expr": { - "LiteralPos": 40, - "LiteralEnd": 48, + "LiteralPos": 39, + "LiteralEnd": 49, "Literal": "inactive" } } @@ -43,8 +43,8 @@ "InPartition": { "PartitionPos": 53, "Expr": { - "LiteralPos": 64, - "LiteralEnd": 74, + "LiteralPos": 63, + "LiteralEnd": 75, "Literal": "2024-01-01" }, "ID": null, @@ -59,8 +59,8 @@ }, "Operation": "=", "RightExpr": { - "LiteralPos": 92, - "LiteralEnd": 98, + "LiteralPos": 91, + "LiteralEnd": 99, "Literal": "active" }, "HasGlobal": false, diff --git a/parser/testdata/ddl/output/attach_table_basic.sql.golden.json b/parser/testdata/ddl/output/attach_table_basic.sql.golden.json index d51e5126..1c2e2277 100644 --- a/parser/testdata/ddl/output/attach_table_basic.sql.golden.json +++ b/parser/testdata/ddl/output/attach_table_basic.sql.golden.json @@ -22,8 +22,8 @@ "OnCluster": { "OnPos": 45, "Expr": { - "LiteralPos": 57, - "LiteralEnd": 72, + "LiteralPos": 56, + "LiteralEnd": 73, "Literal": "default_cluster" } }, @@ -263,7 +263,7 @@ }, { "NamePos": 201, - "ColumnEnd": 225, + "ColumnEnd": 226, "Name": { "Ident": { "Name": "f7", @@ -321,22 +321,22 @@ "LeftParenPos": 257, "RightParenPos": 325, "Items": { - "ListPos": 259, - "ListEnd": 324, + "ListPos": 258, + "ListEnd": 325, "HasDistinct": false, "Items": [ { "Expr": { - "LiteralPos": 259, - "LiteralEnd": 311, + "LiteralPos": 258, + "LiteralEnd": 312, "Literal": "/clickhouse/tables/{layer}-{shard}/test/events_local" }, "Alias": null }, { "Expr": { - "LiteralPos": 315, - "LiteralEnd": 324, + "LiteralPos": 314, + "LiteralEnd": 325, "Literal": "{replica}" }, "Alias": null @@ -350,7 +350,7 @@ "PartitionPos": 353, "Expr": { "ListPos": 366, - "ListEnd": 379, + "ListEnd": 380, "HasDistinct": false, "Items": [ { diff --git a/parser/testdata/ddl/output/bug_001.sql.golden.json b/parser/testdata/ddl/output/bug_001.sql.golden.json index dcc786cc..812894da 100644 --- a/parser/testdata/ddl/output/bug_001.sql.golden.json +++ b/parser/testdata/ddl/output/bug_001.sql.golden.json @@ -1,7 +1,7 @@ [ { "CreatePos": 0, - "StatementEnd": 635, + "StatementEnd": 636, "OrReplace": false, "Name": { "Database": { @@ -21,8 +21,8 @@ "OnCluster": { "OnPos": 60, "Expr": { - "LiteralPos": 72, - "LiteralEnd": 87, + "LiteralPos": 71, + "LiteralEnd": 88, "Literal": "default_cluster" } }, @@ -56,7 +56,7 @@ "HasParen": false, "Select": { "SelectPos": 107, - "StatementEnd": 635, + "StatementEnd": 636, "With": null, "Top": null, "HasDistinct": false, @@ -95,7 +95,7 @@ "RightParenPos": 183, "Items": { "ListPos": 168, - "ListEnd": 182, + "ListEnd": 183, "HasDistinct": false, "Items": [ { @@ -109,8 +109,8 @@ }, { "Expr": { - "LiteralPos": 181, - "LiteralEnd": 182, + "LiteralPos": 180, + "LiteralEnd": 183, "Literal": "x" }, "Alias": null @@ -141,7 +141,7 @@ "RightParenPos": 234, "Items": { "ListPos": 219, - "ListEnd": 233, + "ListEnd": 234, "HasDistinct": false, "Items": [ { @@ -155,8 +155,8 @@ }, { "Expr": { - "LiteralPos": 232, - "LiteralEnd": 233, + "LiteralPos": 231, + "LiteralEnd": 234, "Literal": "y" }, "Alias": null @@ -187,7 +187,7 @@ "RightParenPos": 285, "Items": { "ListPos": 270, - "ListEnd": 284, + "ListEnd": 285, "HasDistinct": false, "Items": [ { @@ -201,8 +201,8 @@ }, { "Expr": { - "LiteralPos": 283, - "LiteralEnd": 284, + "LiteralPos": 282, + "LiteralEnd": 285, "Literal": "z" }, "Alias": null @@ -233,7 +233,7 @@ "RightParenPos": 336, "Items": { "ListPos": 321, - "ListEnd": 335, + "ListEnd": 336, "HasDistinct": false, "Items": [ { @@ -247,8 +247,8 @@ }, { "Expr": { - "LiteralPos": 334, - "LiteralEnd": 335, + "LiteralPos": 333, + "LiteralEnd": 336, "Literal": "a" }, "Alias": null @@ -279,7 +279,7 @@ "RightParenPos": 387, "Items": { "ListPos": 372, - "ListEnd": 386, + "ListEnd": 387, "HasDistinct": false, "Items": [ { @@ -293,8 +293,8 @@ }, { "Expr": { - "LiteralPos": 385, - "LiteralEnd": 386, + "LiteralPos": 384, + "LiteralEnd": 387, "Literal": "b" }, "Alias": null @@ -325,7 +325,7 @@ "RightParenPos": 438, "Items": { "ListPos": 423, - "ListEnd": 437, + "ListEnd": 438, "HasDistinct": false, "Items": [ { @@ -339,8 +339,8 @@ }, { "Expr": { - "LiteralPos": 436, - "LiteralEnd": 437, + "LiteralPos": 435, + "LiteralEnd": 438, "Literal": "c" }, "Alias": null @@ -371,7 +371,7 @@ "RightParenPos": 489, "Items": { "ListPos": 474, - "ListEnd": 488, + "ListEnd": 489, "HasDistinct": false, "Items": [ { @@ -385,8 +385,8 @@ }, { "Expr": { - "LiteralPos": 487, - "LiteralEnd": 488, + "LiteralPos": 486, + "LiteralEnd": 489, "Literal": "d" }, "Alias": null @@ -417,7 +417,7 @@ "RightParenPos": 537, "Items": { "ListPos": 522, - "ListEnd": 536, + "ListEnd": 537, "HasDistinct": false, "Items": [ { @@ -431,8 +431,8 @@ }, { "Expr": { - "LiteralPos": 535, - "LiteralEnd": 536, + "LiteralPos": 534, + "LiteralEnd": 537, "Literal": "e" }, "Alias": null @@ -463,7 +463,7 @@ "RightParenPos": 585, "Items": { "ListPos": 570, - "ListEnd": 584, + "ListEnd": 585, "HasDistinct": false, "Items": [ { @@ -477,8 +477,8 @@ }, { "Expr": { - "LiteralPos": 583, - "LiteralEnd": 584, + "LiteralPos": 582, + "LiteralEnd": 585, "Literal": "f" }, "Alias": null @@ -554,8 +554,8 @@ }, "Operation": "=", "RightExpr": { - "LiteralPos": 630, - "LiteralEnd": 635, + "LiteralPos": 629, + "LiteralEnd": 636, "Literal": "hello" }, "HasGlobal": false, diff --git a/parser/testdata/ddl/output/check.sql.golden.json b/parser/testdata/ddl/output/check.sql.golden.json index f09030e5..85bd6874 100644 --- a/parser/testdata/ddl/output/check.sql.golden.json +++ b/parser/testdata/ddl/output/check.sql.golden.json @@ -26,8 +26,8 @@ "Partition": { "PartitionPos": 47, "Expr": { - "LiteralPos": 58, - "LiteralEnd": 61, + "LiteralPos": 57, + "LiteralEnd": 62, "Literal": "col" }, "ID": null, diff --git a/parser/testdata/ddl/output/create_database_replicated.sql.golden.json b/parser/testdata/ddl/output/create_database_replicated.sql.golden.json index a08eb616..4c00cbe9 100644 --- a/parser/testdata/ddl/output/create_database_replicated.sql.golden.json +++ b/parser/testdata/ddl/output/create_database_replicated.sql.golden.json @@ -18,30 +18,30 @@ "LeftParenPos": 54, "RightParenPos": 93, "Items": { - "ListPos": 56, - "ListEnd": 92, + "ListPos": 55, + "ListEnd": 93, "HasDistinct": false, "Items": [ { "Expr": { - "LiteralPos": 56, - "LiteralEnd": 72, + "LiteralPos": 55, + "LiteralEnd": 73, "Literal": "/root/test_local" }, "Alias": null }, { "Expr": { - "LiteralPos": 76, - "LiteralEnd": 81, + "LiteralPos": 75, + "LiteralEnd": 82, "Literal": "shard" }, "Alias": null }, { "Expr": { - "LiteralPos": 85, - "LiteralEnd": 92, + "LiteralPos": 84, + "LiteralEnd": 93, "Literal": "replica" }, "Alias": null diff --git a/parser/testdata/ddl/output/create_dictionary_basic.sql.golden.json b/parser/testdata/ddl/output/create_dictionary_basic.sql.golden.json index 898e23ef..5bcad52c 100644 --- a/parser/testdata/ddl/output/create_dictionary_basic.sql.golden.json +++ b/parser/testdata/ddl/output/create_dictionary_basic.sql.golden.json @@ -48,7 +48,7 @@ }, { "NamePos": 52, - "AttrEnd": 73, + "AttrEnd": 74, "Name": { "Name": "name", "QuoteType": 1, @@ -64,8 +64,8 @@ } }, "Default": { - "LiteralPos": 73, - "LiteralEnd": 73, + "LiteralPos": 72, + "LiteralEnd": 74, "Literal": "" }, "Expression": null, @@ -75,7 +75,7 @@ }, { "NamePos": 80, - "AttrEnd": 125, + "AttrEnd": 126, "Name": { "Name": "value", "QuoteType": 1, @@ -236,8 +236,8 @@ "NameEnd": 267 }, "Value": { - "LiteralPos": 269, - "LiteralEnd": 278, + "LiteralPos": 268, + "LiteralEnd": 279, "Literal": "localhost" }, "Args": null, @@ -271,8 +271,8 @@ "NameEnd": 302 }, "Value": { - "LiteralPos": 304, - "LiteralEnd": 311, + "LiteralPos": 303, + "LiteralEnd": 312, "Literal": "default" }, "Args": null, @@ -288,8 +288,8 @@ "NameEnd": 325 }, "Value": { - "LiteralPos": 327, - "LiteralEnd": 327, + "LiteralPos": 326, + "LiteralEnd": 328, "Literal": "" }, "Args": null, @@ -305,8 +305,8 @@ "NameEnd": 335 }, "Value": { - "LiteralPos": 337, - "LiteralEnd": 341, + "LiteralPos": 336, + "LiteralEnd": 342, "Literal": "test" }, "Args": null, @@ -322,8 +322,8 @@ "NameEnd": 352 }, "Value": { - "LiteralPos": 354, - "LiteralEnd": 364, + "LiteralPos": 353, + "LiteralEnd": 365, "Literal": "dict_table" }, "Args": null, diff --git a/parser/testdata/ddl/output/create_dictionary_comprehensive.sql.golden.json b/parser/testdata/ddl/output/create_dictionary_comprehensive.sql.golden.json index a0f94d9b..df2194c7 100644 --- a/parser/testdata/ddl/output/create_dictionary_comprehensive.sql.golden.json +++ b/parser/testdata/ddl/output/create_dictionary_comprehensive.sql.golden.json @@ -20,8 +20,8 @@ "IfNotExists": false, "UUID": { "Value": { - "LiteralPos": 60, - "LiteralEnd": 96, + "LiteralPos": 59, + "LiteralEnd": 97, "Literal": "12345678-1234-1234-1234-123456789012" } }, @@ -62,7 +62,7 @@ }, { "NamePos": 149, - "AttrEnd": 170, + "AttrEnd": 171, "Name": { "Name": "name", "QuoteType": 1, @@ -78,8 +78,8 @@ } }, "Default": { - "LiteralPos": 170, - "LiteralEnd": 170, + "LiteralPos": 169, + "LiteralEnd": 171, "Literal": "" }, "Expression": null, @@ -89,7 +89,7 @@ }, { "NamePos": 177, - "AttrEnd": 222, + "AttrEnd": 223, "Name": { "Name": "value", "QuoteType": 1, @@ -250,8 +250,8 @@ "NameEnd": 364 }, "Value": { - "LiteralPos": 366, - "LiteralEnd": 375, + "LiteralPos": 365, + "LiteralEnd": 376, "Literal": "localhost" }, "Args": null, @@ -285,8 +285,8 @@ "NameEnd": 399 }, "Value": { - "LiteralPos": 401, - "LiteralEnd": 405, + "LiteralPos": 400, + "LiteralEnd": 406, "Literal": "root" }, "Args": null, @@ -302,8 +302,8 @@ "NameEnd": 419 }, "Value": { - "LiteralPos": 421, - "LiteralEnd": 427, + "LiteralPos": 420, + "LiteralEnd": 428, "Literal": "secret" }, "Args": null, @@ -319,8 +319,8 @@ "NameEnd": 435 }, "Value": { - "LiteralPos": 437, - "LiteralEnd": 444, + "LiteralPos": 436, + "LiteralEnd": 445, "Literal": "test_db" }, "Args": null, @@ -336,8 +336,8 @@ "NameEnd": 455 }, "Value": { - "LiteralPos": 457, - "LiteralEnd": 473, + "LiteralPos": 456, + "LiteralEnd": 474, "Literal": "dictionary_table" }, "Args": null, diff --git a/parser/testdata/ddl/output/create_dictionary_http_source.sql.golden.json b/parser/testdata/ddl/output/create_dictionary_http_source.sql.golden.json index 585368a1..aef651be 100644 --- a/parser/testdata/ddl/output/create_dictionary_http_source.sql.golden.json +++ b/parser/testdata/ddl/output/create_dictionary_http_source.sql.golden.json @@ -107,8 +107,8 @@ "NameEnd": 80 }, "Value": { - "LiteralPos": 82, - "LiteralEnd": 99, + "LiteralPos": 81, + "LiteralEnd": 100, "Literal": "http://o/asns.csv" }, "Args": null, @@ -124,8 +124,8 @@ "NameEnd": 107 }, "Value": { - "LiteralPos": 109, - "LiteralEnd": 121, + "LiteralPos": 108, + "LiteralEnd": 122, "Literal": "CSVWithNames" }, "Args": null, @@ -276,8 +276,8 @@ "NameEnd": 250 }, "Value": { - "LiteralPos": 252, - "LiteralEnd": 271, + "LiteralPos": 251, + "LiteralEnd": 272, "Literal": "http://[::1]/os.tsv" }, "Args": null, @@ -293,8 +293,8 @@ "NameEnd": 283 }, "Value": { - "LiteralPos": 285, - "LiteralEnd": 297, + "LiteralPos": 284, + "LiteralEnd": 298, "Literal": "TabSeparated" }, "Args": null, @@ -320,8 +320,8 @@ "NameEnd": 319 }, "Value": { - "LiteralPos": 321, - "LiteralEnd": 325, + "LiteralPos": 320, + "LiteralEnd": 326, "Literal": "user" }, "Args": null, @@ -337,8 +337,8 @@ "NameEnd": 335 }, "Value": { - "LiteralPos": 337, - "LiteralEnd": 345, + "LiteralPos": 336, + "LiteralEnd": 346, "Literal": "password" }, "Args": null, @@ -378,8 +378,8 @@ "NameEnd": 371 }, "Value": { - "LiteralPos": 373, - "LiteralEnd": 380, + "LiteralPos": 372, + "LiteralEnd": 381, "Literal": "API-KEY" }, "Args": null, @@ -395,8 +395,8 @@ "NameEnd": 387 }, "Value": { - "LiteralPos": 389, - "LiteralEnd": 392, + "LiteralPos": 388, + "LiteralEnd": 393, "Literal": "key" }, "Args": null, diff --git a/parser/testdata/ddl/output/create_dictionary_with_comment.sql.golden.json b/parser/testdata/ddl/output/create_dictionary_with_comment.sql.golden.json index c16adb05..fc413c7f 100644 --- a/parser/testdata/ddl/output/create_dictionary_with_comment.sql.golden.json +++ b/parser/testdata/ddl/output/create_dictionary_with_comment.sql.golden.json @@ -1,7 +1,7 @@ [ { "CreatePos": 0, - "StatementEnd": 493, + "StatementEnd": 494, "OrReplace": false, "Name": { "Database": { @@ -48,7 +48,7 @@ }, { "NamePos": 52, - "AttrEnd": 73, + "AttrEnd": 74, "Name": { "Name": "name", "QuoteType": 1, @@ -64,8 +64,8 @@ } }, "Default": { - "LiteralPos": 73, - "LiteralEnd": 73, + "LiteralPos": 72, + "LiteralEnd": 74, "Literal": "" }, "Expression": null, @@ -75,7 +75,7 @@ }, { "NamePos": 80, - "AttrEnd": 125, + "AttrEnd": 126, "Name": { "Name": "value", "QuoteType": 1, @@ -236,8 +236,8 @@ "NameEnd": 267 }, "Value": { - "LiteralPos": 269, - "LiteralEnd": 278, + "LiteralPos": 268, + "LiteralEnd": 279, "Literal": "localhost" }, "Args": null, @@ -271,8 +271,8 @@ "NameEnd": 302 }, "Value": { - "LiteralPos": 304, - "LiteralEnd": 311, + "LiteralPos": 303, + "LiteralEnd": 312, "Literal": "default" }, "Args": null, @@ -288,8 +288,8 @@ "NameEnd": 325 }, "Value": { - "LiteralPos": 327, - "LiteralEnd": 327, + "LiteralPos": 326, + "LiteralEnd": 328, "Literal": "" }, "Args": null, @@ -305,8 +305,8 @@ "NameEnd": 335 }, "Value": { - "LiteralPos": 337, - "LiteralEnd": 341, + "LiteralPos": 336, + "LiteralEnd": 342, "Literal": "test" }, "Args": null, @@ -322,8 +322,8 @@ "NameEnd": 352 }, "Value": { - "LiteralPos": 354, - "LiteralEnd": 364, + "LiteralPos": 353, + "LiteralEnd": 365, "Literal": "dict_table" }, "Args": null, @@ -385,8 +385,8 @@ } }, "Comment": { - "LiteralPos": 455, - "LiteralEnd": 493, + "LiteralPos": 454, + "LiteralEnd": 494, "Literal": "This is a test dictionary with comment" } } diff --git a/parser/testdata/ddl/output/create_distributed_table.sql.golden.json b/parser/testdata/ddl/output/create_distributed_table.sql.golden.json index d05d998b..92ff6c33 100644 --- a/parser/testdata/ddl/output/create_distributed_table.sql.golden.json +++ b/parser/testdata/ddl/output/create_distributed_table.sql.golden.json @@ -22,8 +22,8 @@ "OnCluster": { "OnPos": 28, "Expr": { - "LiteralPos": 40, - "LiteralEnd": 55, + "LiteralPos": 39, + "LiteralEnd": 56, "Literal": "default_cluster" } }, @@ -56,7 +56,7 @@ "RightParenPos": 160, "Items": { "ListPos": 104, - "ListEnd": 158, + "ListEnd": 159, "HasDistinct": false, "Items": [ { diff --git a/parser/testdata/ddl/output/create_materialized_view_basic.sql.golden.json b/parser/testdata/ddl/output/create_materialized_view_basic.sql.golden.json index fc6eda9b..2ab94d01 100644 --- a/parser/testdata/ddl/output/create_materialized_view_basic.sql.golden.json +++ b/parser/testdata/ddl/output/create_materialized_view_basic.sql.golden.json @@ -1,7 +1,7 @@ [ { "CreatePos": 0, - "StatementEnd": 537, + "StatementEnd": 538, "OrReplace": false, "Name": { "Database": { @@ -21,8 +21,8 @@ "OnCluster": { "OnPos": 49, "Expr": { - "LiteralPos": 61, - "LiteralEnd": 76, + "LiteralPos": 60, + "LiteralEnd": 77, "Literal": "default_cluster" } }, @@ -253,7 +253,7 @@ "HasParen": false, "Select": { "SelectPos": 208, - "StatementEnd": 537, + "StatementEnd": 538, "With": null, "Top": null, "HasDistinct": false, @@ -292,7 +292,7 @@ "RightParenPos": 277, "Items": { "ListPos": 261, - "ListEnd": 276, + "ListEnd": 277, "HasDistinct": false, "Items": [ { @@ -306,8 +306,8 @@ }, { "Expr": { - "LiteralPos": 274, - "LiteralEnd": 276, + "LiteralPos": 273, + "LiteralEnd": 277, "Literal": "f3" }, "Alias": null @@ -338,7 +338,7 @@ "RightParenPos": 335, "Items": { "ListPos": 319, - "ListEnd": 334, + "ListEnd": 335, "HasDistinct": false, "Items": [ { @@ -352,8 +352,8 @@ }, { "Expr": { - "LiteralPos": 332, - "LiteralEnd": 334, + "LiteralPos": 331, + "LiteralEnd": 335, "Literal": "f4" }, "Alias": null @@ -384,7 +384,7 @@ "RightParenPos": 396, "Items": { "ListPos": 380, - "ListEnd": 395, + "ListEnd": 396, "HasDistinct": false, "Items": [ { @@ -398,8 +398,8 @@ }, { "Expr": { - "LiteralPos": 393, - "LiteralEnd": 395, + "LiteralPos": 392, + "LiteralEnd": 396, "Literal": "f5" }, "Alias": null @@ -430,7 +430,7 @@ "RightParenPos": 449, "Items": { "ListPos": 433, - "ListEnd": 448, + "ListEnd": 449, "HasDistinct": false, "Items": [ { @@ -444,8 +444,8 @@ }, { "Expr": { - "LiteralPos": 446, - "LiteralEnd": 448, + "LiteralPos": 445, + "LiteralEnd": 449, "Literal": "f6" }, "Alias": null @@ -521,8 +521,8 @@ }, "Operation": "=", "RightExpr": { - "LiteralPos": 527, - "LiteralEnd": 537, + "LiteralPos": 526, + "LiteralEnd": 538, "Literal": "test-event" }, "HasGlobal": false, @@ -545,8 +545,8 @@ }, "Populate": false, "Comment": { - "LiteralPos": 548, - "LiteralEnd": 565, + "LiteralPos": 547, + "LiteralEnd": 566, "Literal": "Comment for table" }, "Definer": null, diff --git a/parser/testdata/ddl/output/create_materialized_view_rmv_depends_on_multi.sql.golden.json b/parser/testdata/ddl/output/create_materialized_view_rmv_depends_on_multi.sql.golden.json index 3c5a270b..b115b447 100644 --- a/parser/testdata/ddl/output/create_materialized_view_rmv_depends_on_multi.sql.golden.json +++ b/parser/testdata/ddl/output/create_materialized_view_rmv_depends_on_multi.sql.golden.json @@ -119,8 +119,8 @@ }, { "Expr": { - "LiteralPos": 190, - "LiteralEnd": 198, + "LiteralPos": 189, + "LiteralEnd": 199, "Literal": "profiles" }, "Modifiers": [], @@ -133,8 +133,8 @@ }, { "Expr": { - "LiteralPos": 217, - "LiteralEnd": 223, + "LiteralPos": 216, + "LiteralEnd": 224, "Literal": "string" }, "Modifiers": [], diff --git a/parser/testdata/ddl/output/create_materialized_view_rmv_engine_with_columns.sql.golden.json b/parser/testdata/ddl/output/create_materialized_view_rmv_engine_with_columns.sql.golden.json index 81fceca2..2cbeab21 100644 --- a/parser/testdata/ddl/output/create_materialized_view_rmv_engine_with_columns.sql.golden.json +++ b/parser/testdata/ddl/output/create_materialized_view_rmv_engine_with_columns.sql.golden.json @@ -526,13 +526,13 @@ "Expr": { "Table": { "TablePos": 648, - "TableEnd": 817, + "TableEnd": 818, "Alias": null, "Expr": { "HasParen": true, "Select": { "SelectPos": 654, - "StatementEnd": 817, + "StatementEnd": 818, "With": null, "Top": null, "HasDistinct": false, @@ -543,7 +543,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 669, - "NameEnd": 669 + "NameEnd": 670 }, "Modifiers": [], "Alias": null @@ -665,8 +665,8 @@ }, "Operation": "!=", "RightExpr": { - "LiteralPos": 815, - "LiteralEnd": 817, + "LiteralPos": 814, + "LiteralEnd": 818, "Literal": "{}" }, "HasGlobal": false, @@ -689,7 +689,7 @@ }, "HasFinal": false }, - "StatementEnd": 817, + "StatementEnd": 818, "SampleRatio": null, "HasFinal": false } @@ -732,8 +732,8 @@ }, "Populate": false, "Comment": { - "LiteralPos": 466, - "LiteralEnd": 478, + "LiteralPos": 465, + "LiteralEnd": 479, "Literal": "test comment" }, "Definer": { diff --git a/parser/testdata/ddl/output/create_materialized_view_with_comment_before_as.sql.golden.json b/parser/testdata/ddl/output/create_materialized_view_with_comment_before_as.sql.golden.json index f97db257..da5f8955 100644 --- a/parser/testdata/ddl/output/create_materialized_view_with_comment_before_as.sql.golden.json +++ b/parser/testdata/ddl/output/create_materialized_view_with_comment_before_as.sql.golden.json @@ -252,8 +252,8 @@ }, "Populate": false, "Comment": { - "LiteralPos": 167, - "LiteralEnd": 229, + "LiteralPos": 166, + "LiteralEnd": 230, "Literal": "{\"blueprint_hash\":\"abc123\",\"timestamp\":\"2026-04-08T12:00:00Z\"}" }, "Definer": null, diff --git a/parser/testdata/ddl/output/create_materialized_view_with_definer.sql.golden.json b/parser/testdata/ddl/output/create_materialized_view_with_definer.sql.golden.json index e5463edb..7e49ced3 100644 --- a/parser/testdata/ddl/output/create_materialized_view_with_definer.sql.golden.json +++ b/parser/testdata/ddl/output/create_materialized_view_with_definer.sql.golden.json @@ -1,7 +1,7 @@ [ { "CreatePos": 0, - "StatementEnd": 355, + "StatementEnd": 356, "OrReplace": false, "Name": { "Database": null, @@ -179,7 +179,7 @@ "HasParen": true, "Select": { "SelectPos": 218, - "StatementEnd": 355, + "StatementEnd": 356, "With": null, "Top": null, "HasDistinct": false, @@ -286,7 +286,7 @@ "RightParenPos": 355, "Items": { "ListPos": 330, - "ListEnd": 354, + "ListEnd": 355, "HasDistinct": false, "Items": [ { @@ -370,8 +370,8 @@ }, "Populate": false, "Comment": { - "LiteralPos": 367, - "LiteralEnd": 379, + "LiteralPos": 366, + "LiteralEnd": 380, "Literal": "Test comment" }, "Definer": { diff --git a/parser/testdata/ddl/output/create_materialized_view_with_empty_table_schema.sql.golden.json b/parser/testdata/ddl/output/create_materialized_view_with_empty_table_schema.sql.golden.json index d01f81e2..79fc995b 100644 --- a/parser/testdata/ddl/output/create_materialized_view_with_empty_table_schema.sql.golden.json +++ b/parser/testdata/ddl/output/create_materialized_view_with_empty_table_schema.sql.golden.json @@ -40,22 +40,22 @@ "LeftParenPos": 99, "RightParenPos": 150, "Items": { - "ListPos": 101, - "ListEnd": 149, + "ListPos": 100, + "ListEnd": 150, "HasDistinct": false, "Items": [ { "Expr": { - "LiteralPos": 101, - "LiteralEnd": 136, + "LiteralPos": 100, + "LiteralEnd": 137, "Literal": "/clickhouse/{layer}-{shard}/test/t0" }, "Alias": null }, { "Expr": { - "LiteralPos": 140, - "LiteralEnd": 149, + "LiteralPos": 139, + "LiteralEnd": 150, "Literal": "{replica}" }, "Alias": null @@ -69,7 +69,7 @@ "PartitionPos": 152, "Expr": { "ListPos": 165, - "ListEnd": 176, + "ListEnd": 177, "HasDistinct": false, "Items": [ { @@ -248,7 +248,7 @@ "HasParen": true, "Select": { "SelectPos": 254, - "StatementEnd": 433, + "StatementEnd": 434, "With": null, "Top": null, "HasDistinct": false, @@ -331,7 +331,7 @@ }, "OrderBy": { "OrderPos": 323, - "ListEnd": 346, + "ListEnd": 347, "Items": [ { "OrderPos": 323, @@ -437,30 +437,30 @@ "LeftParenPos": 389, "RightParenPos": 410, "Items": { - "ListPos": 391, - "ListEnd": 409, + "ListPos": 390, + "ListEnd": 410, "HasDistinct": false, "Items": [ { "Expr": { - "LiteralPos": 391, - "LiteralEnd": 394, + "LiteralPos": 390, + "LiteralEnd": 395, "Literal": "foo" }, "Alias": null }, { "Expr": { - "LiteralPos": 398, - "LiteralEnd": 401, + "LiteralPos": 397, + "LiteralEnd": 402, "Literal": "bar" }, "Alias": null }, { "Expr": { - "LiteralPos": 405, - "LiteralEnd": 409, + "LiteralPos": 404, + "LiteralEnd": 410, "Literal": "test" }, "Alias": null @@ -482,8 +482,8 @@ }, "Operation": "=", "RightExpr": { - "LiteralPos": 429, - "LiteralEnd": 433, + "LiteralPos": 428, + "LiteralEnd": 434, "Literal": "test" }, "HasGlobal": false, diff --git a/parser/testdata/ddl/output/create_materialized_view_with_gcs.sql.golden.json b/parser/testdata/ddl/output/create_materialized_view_with_gcs.sql.golden.json index ae8809ce..a4daafbd 100644 --- a/parser/testdata/ddl/output/create_materialized_view_with_gcs.sql.golden.json +++ b/parser/testdata/ddl/output/create_materialized_view_with_gcs.sql.golden.json @@ -79,7 +79,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 126, - "NameEnd": 126 + "NameEnd": 127 }, "Modifiers": [], "Alias": null @@ -118,8 +118,8 @@ "NameEnd": 150 }, "Value": { - "LiteralPos": 152, - "LiteralEnd": 205, + "LiteralPos": 151, + "LiteralEnd": 206, "Literal": "https://storage.googleapis.com/some-bucket/some-path/" } } diff --git a/parser/testdata/ddl/output/create_mv_with_not_op.sql.golden.json b/parser/testdata/ddl/output/create_mv_with_not_op.sql.golden.json index 1134a4d6..86adc196 100644 --- a/parser/testdata/ddl/output/create_mv_with_not_op.sql.golden.json +++ b/parser/testdata/ddl/output/create_mv_with_not_op.sql.golden.json @@ -21,8 +21,8 @@ "OnCluster": { "OnPos": 48, "Expr": { - "LiteralPos": 60, - "LiteralEnd": 75, + "LiteralPos": 59, + "LiteralEnd": 76, "Literal": "default_cluster" } }, @@ -292,7 +292,7 @@ "RightParenPos": 271, "Items": { "ListPos": 255, - "ListEnd": 270, + "ListEnd": 271, "HasDistinct": false, "Items": [ { @@ -306,8 +306,8 @@ }, { "Expr": { - "LiteralPos": 268, - "LiteralEnd": 270, + "LiteralPos": 267, + "LiteralEnd": 271, "Literal": "f3" }, "Alias": null @@ -338,7 +338,7 @@ "RightParenPos": 327, "Items": { "ListPos": 311, - "ListEnd": 326, + "ListEnd": 327, "HasDistinct": false, "Items": [ { @@ -352,8 +352,8 @@ }, { "Expr": { - "LiteralPos": 324, - "LiteralEnd": 326, + "LiteralPos": 323, + "LiteralEnd": 327, "Literal": "f4" }, "Alias": null @@ -384,7 +384,7 @@ "RightParenPos": 383, "Items": { "ListPos": 367, - "ListEnd": 382, + "ListEnd": 383, "HasDistinct": false, "Items": [ { @@ -398,8 +398,8 @@ }, { "Expr": { - "LiteralPos": 380, - "LiteralEnd": 382, + "LiteralPos": 379, + "LiteralEnd": 383, "Literal": "f5" }, "Alias": null @@ -430,7 +430,7 @@ "RightParenPos": 436, "Items": { "ListPos": 420, - "ListEnd": 435, + "ListEnd": 436, "HasDistinct": false, "Items": [ { @@ -444,8 +444,8 @@ }, { "Expr": { - "LiteralPos": 433, - "LiteralEnd": 435, + "LiteralPos": 432, + "LiteralEnd": 436, "Literal": "f6" }, "Alias": null @@ -523,8 +523,8 @@ }, "Operation": "=", "RightExpr": { - "LiteralPos": 506, - "LiteralEnd": 516, + "LiteralPos": 505, + "LiteralEnd": 517, "Literal": "test-event" }, "HasGlobal": false, diff --git a/parser/testdata/ddl/output/create_mv_with_order_by.sql.golden.json b/parser/testdata/ddl/output/create_mv_with_order_by.sql.golden.json index dd2be4b9..ddc5c16f 100644 --- a/parser/testdata/ddl/output/create_mv_with_order_by.sql.golden.json +++ b/parser/testdata/ddl/output/create_mv_with_order_by.sql.golden.json @@ -115,7 +115,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 118, - "NameEnd": 118 + "NameEnd": 119 }, "Modifiers": [], "Alias": null @@ -249,7 +249,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 242, - "NameEnd": 242 + "NameEnd": 243 }, "Modifiers": [], "Alias": null diff --git a/parser/testdata/ddl/output/create_named_collection_basic.sql.golden.json b/parser/testdata/ddl/output/create_named_collection_basic.sql.golden.json index 75ed0e84..7a7f15f1 100644 --- a/parser/testdata/ddl/output/create_named_collection_basic.sql.golden.json +++ b/parser/testdata/ddl/output/create_named_collection_basic.sql.golden.json @@ -1,7 +1,7 @@ [ { "CreatePos": 0, - "StatementEnd": 158, + "StatementEnd": 159, "Name": { "Name": "servercore_s3_config", "QuoteType": 1, @@ -20,8 +20,8 @@ "NameEnd": 65 }, "Value": { - "LiteralPos": 69, - "LiteralEnd": 94, + "LiteralPos": 68, + "LiteralEnd": 95, "Literal": "http://local-minio:9000/*" }, "Overridable": false, @@ -36,8 +36,8 @@ "NameEnd": 110 }, "Value": { - "LiteralPos": 114, - "LiteralEnd": 124, + "LiteralPos": 113, + "LiteralEnd": 125, "Literal": "minioadmin" }, "Overridable": false, @@ -52,8 +52,8 @@ "NameEnd": 144 }, "Value": { - "LiteralPos": 148, - "LiteralEnd": 158, + "LiteralPos": 147, + "LiteralEnd": 159, "Literal": "minioadmin" }, "Overridable": false, diff --git a/parser/testdata/ddl/output/create_named_collection_simple.sql.golden.json b/parser/testdata/ddl/output/create_named_collection_simple.sql.golden.json index f3f45256..46e1ae3a 100644 --- a/parser/testdata/ddl/output/create_named_collection_simple.sql.golden.json +++ b/parser/testdata/ddl/output/create_named_collection_simple.sql.golden.json @@ -1,7 +1,7 @@ [ { "CreatePos": 0, - "StatementEnd": 72, + "StatementEnd": 73, "Name": { "Name": "my_collection", "QuoteType": 1, @@ -20,8 +20,8 @@ "NameEnd": 45 }, "Value": { - "LiteralPos": 49, - "LiteralEnd": 55, + "LiteralPos": 48, + "LiteralEnd": 56, "Literal": "value1" }, "Overridable": false, @@ -36,8 +36,8 @@ "NameEnd": 62 }, "Value": { - "LiteralPos": 66, - "LiteralEnd": 72, + "LiteralPos": 65, + "LiteralEnd": 73, "Literal": "value2" }, "Overridable": false, diff --git a/parser/testdata/ddl/output/create_named_collection_with_cluster.sql.golden.json b/parser/testdata/ddl/output/create_named_collection_with_cluster.sql.golden.json index 2e863b07..84cbede4 100644 --- a/parser/testdata/ddl/output/create_named_collection_with_cluster.sql.golden.json +++ b/parser/testdata/ddl/output/create_named_collection_with_cluster.sql.golden.json @@ -1,7 +1,7 @@ [ { "CreatePos": 0, - "StatementEnd": 153, + "StatementEnd": 154, "Name": { "Name": "my_collection", "QuoteType": 1, @@ -28,8 +28,8 @@ "NameEnd": 81 }, "Value": { - "LiteralPos": 85, - "LiteralEnd": 91, + "LiteralPos": 84, + "LiteralEnd": 92, "Literal": "value1" }, "Overridable": true, @@ -44,8 +44,8 @@ "NameEnd": 110 }, "Value": { - "LiteralPos": 114, - "LiteralEnd": 120, + "LiteralPos": 113, + "LiteralEnd": 121, "Literal": "value2" }, "Overridable": false, @@ -60,8 +60,8 @@ "NameEnd": 143 }, "Value": { - "LiteralPos": 147, - "LiteralEnd": 153, + "LiteralPos": 146, + "LiteralEnd": 154, "Literal": "value3" }, "Overridable": false, diff --git a/parser/testdata/ddl/output/create_named_collection_with_overridable.sql.golden.json b/parser/testdata/ddl/output/create_named_collection_with_overridable.sql.golden.json index d6af886d..a1b265f9 100644 --- a/parser/testdata/ddl/output/create_named_collection_with_overridable.sql.golden.json +++ b/parser/testdata/ddl/output/create_named_collection_with_overridable.sql.golden.json @@ -1,7 +1,7 @@ [ { "CreatePos": 0, - "StatementEnd": 145, + "StatementEnd": 146, "Name": { "Name": "test_collection", "QuoteType": 1, @@ -20,8 +20,8 @@ "NameEnd": 46 }, "Value": { - "LiteralPos": 50, - "LiteralEnd": 68, + "LiteralPos": 49, + "LiteralEnd": 69, "Literal": "http://example.com" }, "Overridable": true, @@ -36,8 +36,8 @@ "NameEnd": 93 }, "Value": { - "LiteralPos": 97, - "LiteralEnd": 103, + "LiteralPos": 96, + "LiteralEnd": 104, "Literal": "key123" }, "Overridable": false, @@ -52,8 +52,8 @@ "NameEnd": 132 }, "Value": { - "LiteralPos": 136, - "LiteralEnd": 145, + "LiteralPos": 135, + "LiteralEnd": 146, "Literal": "secret456" }, "Overridable": false, diff --git a/parser/testdata/ddl/output/create_or_replace.sql.golden.json b/parser/testdata/ddl/output/create_or_replace.sql.golden.json index 08a1fb69..81bc6616 100644 --- a/parser/testdata/ddl/output/create_or_replace.sql.golden.json +++ b/parser/testdata/ddl/output/create_or_replace.sql.golden.json @@ -196,7 +196,7 @@ "PartitionPos": 292, "Expr": { "ListPos": 305, - "ListEnd": 318, + "ListEnd": 319, "HasDistinct": false, "Items": [ { @@ -320,8 +320,8 @@ "TableFunction": null, "HasTemporary": false, "Comment": { - "LiteralPos": 372, - "LiteralEnd": 389, + "LiteralPos": 371, + "LiteralEnd": 390, "Literal": "Comment for table" } }, diff --git a/parser/testdata/ddl/output/create_or_replace_materialized_view.sql.golden.json b/parser/testdata/ddl/output/create_or_replace_materialized_view.sql.golden.json index 7fed6e56..2f6b42cb 100644 --- a/parser/testdata/ddl/output/create_or_replace_materialized_view.sql.golden.json +++ b/parser/testdata/ddl/output/create_or_replace_materialized_view.sql.golden.json @@ -50,7 +50,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 57, - "NameEnd": 57 + "NameEnd": 58 }, "Modifiers": [], "Alias": null diff --git a/parser/testdata/ddl/output/create_role.sql.golden.json b/parser/testdata/ddl/output/create_role.sql.golden.json index d0d64499..e25d8361 100644 --- a/parser/testdata/ddl/output/create_role.sql.golden.json +++ b/parser/testdata/ddl/output/create_role.sql.golden.json @@ -193,7 +193,7 @@ }, { "CreatePos": 282, - "StatementEnd": 328, + "StatementEnd": 329, "IfNotExists": false, "OrReplace": false, "RoleNames": [ @@ -221,8 +221,8 @@ }, "Operation": "", "Value": { - "LiteralPos": 321, - "LiteralEnd": 328, + "LiteralPos": 320, + "LiteralEnd": 329, "Literal": "default" } } @@ -562,8 +562,8 @@ }, "Operation": "", "Value": { - "LiteralPos": 743, - "LiteralEnd": 750, + "LiteralPos": 742, + "LiteralEnd": 751, "Literal": "default" } } @@ -670,7 +670,7 @@ }, { "CreatePos": 862, - "StatementEnd": 908, + "StatementEnd": 909, "IfNotExists": false, "OrReplace": false, "RoleNames": [ @@ -698,8 +698,8 @@ }, "Operation": "", "Value": { - "LiteralPos": 901, - "LiteralEnd": 908, + "LiteralPos": 900, + "LiteralEnd": 909, "Literal": "default" } } @@ -814,8 +814,8 @@ }, "Operation": "", "Value": { - "LiteralPos": 1039, - "LiteralEnd": 1046, + "LiteralPos": 1038, + "LiteralEnd": 1047, "Literal": "default" } } @@ -896,7 +896,7 @@ }, { "CreatePos": 1123, - "StatementEnd": 1146, + "StatementEnd": 1147, "IfNotExists": false, "OrReplace": false, "RoleNames": [ @@ -908,8 +908,8 @@ "NameEnd": 1143 }, "Scope": { - "LiteralPos": 1145, - "LiteralEnd": 1146, + "LiteralPos": 1144, + "LiteralEnd": 1147, "Literal": "%" }, "OnCluster": null @@ -920,7 +920,7 @@ }, { "CreatePos": 1149, - "StatementEnd": 1183, + "StatementEnd": 1184, "IfNotExists": false, "OrReplace": false, "RoleNames": [ @@ -932,8 +932,8 @@ "NameEnd": 1169 }, "Scope": { - "LiteralPos": 1171, - "LiteralEnd": 1183, + "LiteralPos": 1170, + "LiteralEnd": 1184, "Literal": "%.myhost.com" }, "OnCluster": null diff --git a/parser/testdata/ddl/output/create_table_as_remote_function.sql.golden.json b/parser/testdata/ddl/output/create_table_as_remote_function.sql.golden.json index 8a75146b..d7a4b7b9 100644 --- a/parser/testdata/ddl/output/create_table_as_remote_function.sql.golden.json +++ b/parser/testdata/ddl/output/create_table_as_remote_function.sql.golden.json @@ -127,28 +127,28 @@ "RightParenPos": 222, "Args": [ { - "LiteralPos": 156, - "LiteralEnd": 172, + "LiteralPos": 155, + "LiteralEnd": 173, "Literal": "host.example.com" }, { - "LiteralPos": 176, - "LiteralEnd": 185, + "LiteralPos": 175, + "LiteralEnd": 186, "Literal": "source_db" }, { - "LiteralPos": 189, - "LiteralEnd": 201, + "LiteralPos": 188, + "LiteralEnd": 202, "Literal": "source_table" }, { - "LiteralPos": 205, - "LiteralEnd": 209, + "LiteralPos": 204, + "LiteralEnd": 210, "Literal": "user" }, { - "LiteralPos": 213, - "LiteralEnd": 221, + "LiteralPos": 212, + "LiteralEnd": 222, "Literal": "password" } ] @@ -255,18 +255,18 @@ "RightParenPos": 353, "Args": [ { - "LiteralPos": 321, - "LiteralEnd": 330, + "LiteralPos": 320, + "LiteralEnd": 331, "Literal": "localhost" }, { - "LiteralPos": 334, - "LiteralEnd": 336, + "LiteralPos": 333, + "LiteralEnd": 337, "Literal": "db" }, { - "LiteralPos": 340, - "LiteralEnd": 352, + "LiteralPos": 339, + "LiteralEnd": 353, "Literal": "source_table" } ] diff --git a/parser/testdata/ddl/output/create_table_basic.sql.golden.json b/parser/testdata/ddl/output/create_table_basic.sql.golden.json index 3ab6cbbf..96589677 100644 --- a/parser/testdata/ddl/output/create_table_basic.sql.golden.json +++ b/parser/testdata/ddl/output/create_table_basic.sql.golden.json @@ -497,7 +497,7 @@ }, { "NamePos": 457, - "ColumnEnd": 481, + "ColumnEnd": 482, "Name": { "Ident": { "Name": "f8", @@ -545,7 +545,7 @@ }, { "NamePos": 488, - "ColumnEnd": 529, + "ColumnEnd": 530, "Name": { "Ident": { "Name": "f9", @@ -593,14 +593,14 @@ "LeftBracketPos": 522, "RightBracketPos": 528, "Items": { - "ListPos": 524, - "ListEnd": 527, + "ListPos": 523, + "ListEnd": 528, "HasDistinct": false, "Items": [ { "Expr": { - "LiteralPos": 524, - "LiteralEnd": 527, + "LiteralPos": 523, + "LiteralEnd": 528, "Literal": "f70" }, "Alias": null @@ -751,8 +751,8 @@ { "SkipPath": null, "SkipRegex": { - "LiteralPos": 647, - "LiteralEnd": 652, + "LiteralPos": 646, + "LiteralEnd": 653, "Literal": "hello" }, "MaxDynamicPaths": null, @@ -827,7 +827,7 @@ "PartitionPos": 702, "Expr": { "ListPos": 715, - "ListEnd": 728, + "ListEnd": 729, "HasDistinct": false, "Items": [ { @@ -960,8 +960,8 @@ "TableFunction": null, "HasTemporary": false, "Comment": { - "LiteralPos": 785, - "LiteralEnd": 802, + "LiteralPos": 784, + "LiteralEnd": 803, "Literal": "Comment for table" } } diff --git a/parser/testdata/ddl/output/create_table_json_typehints.sql.golden.json b/parser/testdata/ddl/output/create_table_json_typehints.sql.golden.json index f992823b..2c40ff8e 100644 --- a/parser/testdata/ddl/output/create_table_json_typehints.sql.golden.json +++ b/parser/testdata/ddl/output/create_table_json_typehints.sql.golden.json @@ -1,7 +1,7 @@ [ { "CreatePos": 0, - "StatementEnd": 139, + "StatementEnd": 140, "OrReplace": false, "Name": { "Database": null, @@ -131,8 +131,8 @@ { "SkipPath": null, "SkipRegex": { - "LiteralPos": 98, - "LiteralEnd": 100, + "LiteralPos": 97, + "LiteralEnd": 101, "Literal": "re" }, "MaxDynamicPaths": null, @@ -158,7 +158,7 @@ }, "Engine": { "EnginePos": 105, - "EngineEnd": 139, + "EngineEnd": 140, "Name": "MergeTree", "Params": null, "PrimaryKey": null, @@ -168,7 +168,7 @@ "Settings": null, "OrderBy": { "OrderPos": 124, - "ListEnd": 139, + "ListEnd": 140, "Items": [ { "OrderPos": 124, diff --git a/parser/testdata/ddl/output/create_table_ttl_group_by.sql.golden.json b/parser/testdata/ddl/output/create_table_ttl_group_by.sql.golden.json index 4264fcc0..ed8c92da 100644 --- a/parser/testdata/ddl/output/create_table_ttl_group_by.sql.golden.json +++ b/parser/testdata/ddl/output/create_table_ttl_group_by.sql.golden.json @@ -1,7 +1,7 @@ [ { "CreatePos": 0, - "StatementEnd": 142, + "StatementEnd": 143, "OrReplace": false, "Name": { "Database": null, @@ -115,7 +115,7 @@ }, "Engine": { "EnginePos": 55, - "EngineEnd": 142, + "EngineEnd": 143, "Name": "MergeTree", "Params": { "LeftParenPos": 73, @@ -133,7 +133,7 @@ "SampleBy": null, "TTL": { "TTLPos": 88, - "ListEnd": 142, + "ListEnd": 143, "Items": [ { "TTLPos": 88, @@ -491,7 +491,7 @@ }, { "CreatePos": 277, - "StatementEnd": 470, + "StatementEnd": 471, "OrReplace": false, "Name": { "Database": null, @@ -635,7 +635,7 @@ }, "Engine": { "EnginePos": 346, - "EngineEnd": 470, + "EngineEnd": 471, "Name": "MergeTree", "Params": { "LeftParenPos": 364, @@ -653,7 +653,7 @@ "SampleBy": null, "TTL": { "TTLPos": 390, - "ListEnd": 470, + "ListEnd": 471, "Items": [ { "TTLPos": 390, @@ -1159,7 +1159,7 @@ }, { "CreatePos": 653, - "StatementEnd": 796, + "StatementEnd": 797, "OrReplace": false, "Name": { "Database": null, @@ -1273,7 +1273,7 @@ }, "Engine": { "EnginePos": 708, - "EngineEnd": 796, + "EngineEnd": 797, "Name": "MergeTree", "Params": { "LeftParenPos": 726, @@ -1291,7 +1291,7 @@ "SampleBy": null, "TTL": { "TTLPos": 741, - "ListEnd": 796, + "ListEnd": 797, "Items": [ { "TTLPos": 741, diff --git a/parser/testdata/ddl/output/create_table_with_codec_delta.sql.golden.json b/parser/testdata/ddl/output/create_table_with_codec_delta.sql.golden.json index 41115ca0..94a5df0c 100644 --- a/parser/testdata/ddl/output/create_table_with_codec_delta.sql.golden.json +++ b/parser/testdata/ddl/output/create_table_with_codec_delta.sql.golden.json @@ -440,22 +440,22 @@ "LeftParenPos": 405, "RightParenPos": 437, "Items": { - "ListPos": 407, - "ListEnd": 436, + "ListPos": 406, + "ListEnd": 437, "HasDistinct": false, "Items": [ { "Expr": { - "LiteralPos": 407, - "LiteralEnd": 423, + "LiteralPos": 406, + "LiteralEnd": 424, "Literal": "/root/test_local" }, "Alias": null }, { "Expr": { - "LiteralPos": 427, - "LiteralEnd": 436, + "LiteralPos": 426, + "LiteralEnd": 437, "Literal": "{replica}" }, "Alias": null @@ -469,7 +469,7 @@ "PartitionPos": 439, "Expr": { "ListPos": 452, - "ListEnd": 477, + "ListEnd": 478, "HasDistinct": false, "Items": [ { @@ -678,8 +678,8 @@ "NameEnd": 782 }, "Expr": { - "LiteralPos": 784, - "LiteralEnd": 788, + "LiteralPos": 783, + "LiteralEnd": 789, "Literal": "main" } }, diff --git a/parser/testdata/ddl/output/create_table_with_enum_fields.sql.golden.json b/parser/testdata/ddl/output/create_table_with_enum_fields.sql.golden.json index ae86063e..2789dbdd 100644 --- a/parser/testdata/ddl/output/create_table_with_enum_fields.sql.golden.json +++ b/parser/testdata/ddl/output/create_table_with_enum_fields.sql.golden.json @@ -46,13 +46,13 @@ "NamePos": 58, "NameEnd": 63 }, - "ListPos": 65, + "ListPos": 64, "ListEnd": 160, "Values": [ { "Name": { - "LiteralPos": 65, - "LiteralEnd": 68, + "LiteralPos": 64, + "LiteralEnd": 69, "Literal": "GET" }, "Value": { @@ -64,8 +64,8 @@ }, { "Name": { - "LiteralPos": 75, - "LiteralEnd": 79, + "LiteralPos": 74, + "LiteralEnd": 80, "Literal": "POST" }, "Value": { @@ -77,8 +77,8 @@ }, { "Name": { - "LiteralPos": 85, - "LiteralEnd": 89, + "LiteralPos": 84, + "LiteralEnd": 90, "Literal": "HEAD" }, "Value": { @@ -90,8 +90,8 @@ }, { "Name": { - "LiteralPos": 95, - "LiteralEnd": 98, + "LiteralPos": 94, + "LiteralEnd": 99, "Literal": "PUT" }, "Value": { @@ -103,8 +103,8 @@ }, { "Name": { - "LiteralPos": 103, - "LiteralEnd": 108, + "LiteralPos": 102, + "LiteralEnd": 109, "Literal": "PATCH" }, "Value": { @@ -116,8 +116,8 @@ }, { "Name": { - "LiteralPos": 114, - "LiteralEnd": 120, + "LiteralPos": 113, + "LiteralEnd": 121, "Literal": "DELETE" }, "Value": { @@ -129,8 +129,8 @@ }, { "Name": { - "LiteralPos": 126, - "LiteralEnd": 133, + "LiteralPos": 125, + "LiteralEnd": 134, "Literal": "CONNECT" }, "Value": { @@ -142,8 +142,8 @@ }, { "Name": { - "LiteralPos": 139, - "LiteralEnd": 146, + "LiteralPos": 138, + "LiteralEnd": 147, "Literal": "OPTIONS" }, "Value": { @@ -155,8 +155,8 @@ }, { "Name": { - "LiteralPos": 152, - "LiteralEnd": 157, + "LiteralPos": 151, + "LiteralEnd": 158, "Literal": "TRACE" }, "Value": { @@ -264,22 +264,22 @@ "LeftParenPos": 263, "RightParenPos": 313, "Items": { - "ListPos": 265, - "ListEnd": 312, + "ListPos": 264, + "ListEnd": 313, "HasDistinct": false, "Items": [ { "Expr": { - "LiteralPos": 265, - "LiteralEnd": 299, + "LiteralPos": 264, + "LiteralEnd": 300, "Literal": "/clickhouse/tables/{layer}-{shard}" }, "Alias": null }, { "Expr": { - "LiteralPos": 303, - "LiteralEnd": 312, + "LiteralPos": 302, + "LiteralEnd": 313, "Literal": "{replica}" }, "Alias": null @@ -293,7 +293,7 @@ "PartitionPos": 315, "Expr": { "ListPos": 328, - "ListEnd": 344, + "ListEnd": 345, "HasDistinct": false, "Items": [ { @@ -334,7 +334,7 @@ "SampleBy": null, "TTL": { "TTLPos": 374, - "ListEnd": 413, + "ListEnd": 414, "Items": [ { "TTLPos": 374, diff --git a/parser/testdata/ddl/output/create_table_with_index.sql.golden.json b/parser/testdata/ddl/output/create_table_with_index.sql.golden.json index 2409b6e0..f17eb0cc 100644 --- a/parser/testdata/ddl/output/create_table_with_index.sql.golden.json +++ b/parser/testdata/ddl/output/create_table_with_index.sql.golden.json @@ -686,22 +686,22 @@ "LeftParenPos": 720, "RightParenPos": 752, "Items": { - "ListPos": 722, - "ListEnd": 751, + "ListPos": 721, + "ListEnd": 752, "HasDistinct": false, "Items": [ { "Expr": { - "LiteralPos": 722, - "LiteralEnd": 738, + "LiteralPos": 721, + "LiteralEnd": 739, "Literal": "/root/test_local" }, "Alias": null }, { "Expr": { - "LiteralPos": 742, - "LiteralEnd": 751, + "LiteralPos": 741, + "LiteralEnd": 752, "Literal": "{replica}" }, "Alias": null @@ -715,7 +715,7 @@ "PartitionPos": 754, "Expr": { "ListPos": 767, - "ListEnd": 792, + "ListEnd": 793, "HasDistinct": false, "Items": [ { @@ -924,8 +924,8 @@ "NameEnd": 1097 }, "Expr": { - "LiteralPos": 1099, - "LiteralEnd": 1103, + "LiteralPos": 1098, + "LiteralEnd": 1104, "Literal": "main" } }, diff --git a/parser/testdata/ddl/output/create_table_with_keyword_partition_by.sql.golden.json b/parser/testdata/ddl/output/create_table_with_keyword_partition_by.sql.golden.json index 730176ff..4fe8345f 100644 --- a/parser/testdata/ddl/output/create_table_with_keyword_partition_by.sql.golden.json +++ b/parser/testdata/ddl/output/create_table_with_keyword_partition_by.sql.golden.json @@ -20,8 +20,8 @@ "IfNotExists": false, "UUID": { "Value": { - "LiteralPos": 37, - "LiteralEnd": 73, + "LiteralPos": 36, + "LiteralEnd": 74, "Literal": "dad17568-b070-49d0-9ad1-7568b07029d0" } }, diff --git a/parser/testdata/ddl/output/create_table_with_nullable.sql.golden.json b/parser/testdata/ddl/output/create_table_with_nullable.sql.golden.json index b7e438b6..db6e10e1 100644 --- a/parser/testdata/ddl/output/create_table_with_nullable.sql.golden.json +++ b/parser/testdata/ddl/output/create_table_with_nullable.sql.golden.json @@ -20,8 +20,8 @@ "IfNotExists": false, "UUID": { "Value": { - "LiteralPos": 74, - "LiteralEnd": 110, + "LiteralPos": 73, + "LiteralEnd": 111, "Literal": "27673372-7973-44f5-a767-33727973c4f5" } }, diff --git a/parser/testdata/ddl/output/create_table_with_on_clsuter.sql.golden.json b/parser/testdata/ddl/output/create_table_with_on_clsuter.sql.golden.json index d51e5126..1c2e2277 100644 --- a/parser/testdata/ddl/output/create_table_with_on_clsuter.sql.golden.json +++ b/parser/testdata/ddl/output/create_table_with_on_clsuter.sql.golden.json @@ -22,8 +22,8 @@ "OnCluster": { "OnPos": 45, "Expr": { - "LiteralPos": 57, - "LiteralEnd": 72, + "LiteralPos": 56, + "LiteralEnd": 73, "Literal": "default_cluster" } }, @@ -263,7 +263,7 @@ }, { "NamePos": 201, - "ColumnEnd": 225, + "ColumnEnd": 226, "Name": { "Ident": { "Name": "f7", @@ -321,22 +321,22 @@ "LeftParenPos": 257, "RightParenPos": 325, "Items": { - "ListPos": 259, - "ListEnd": 324, + "ListPos": 258, + "ListEnd": 325, "HasDistinct": false, "Items": [ { "Expr": { - "LiteralPos": 259, - "LiteralEnd": 311, + "LiteralPos": 258, + "LiteralEnd": 312, "Literal": "/clickhouse/tables/{layer}-{shard}/test/events_local" }, "Alias": null }, { "Expr": { - "LiteralPos": 315, - "LiteralEnd": 324, + "LiteralPos": 314, + "LiteralEnd": 325, "Literal": "{replica}" }, "Alias": null @@ -350,7 +350,7 @@ "PartitionPos": 353, "Expr": { "ListPos": 366, - "ListEnd": 379, + "ListEnd": 380, "HasDistinct": false, "Items": [ { diff --git a/parser/testdata/ddl/output/create_table_with_sample_by.sql.golden.json b/parser/testdata/ddl/output/create_table_with_sample_by.sql.golden.json index 743749ab..4db76993 100644 --- a/parser/testdata/ddl/output/create_table_with_sample_by.sql.golden.json +++ b/parser/testdata/ddl/output/create_table_with_sample_by.sql.golden.json @@ -20,8 +20,8 @@ "IfNotExists": false, "UUID": { "Value": { - "LiteralPos": 32, - "LiteralEnd": 68, + "LiteralPos": 31, + "LiteralEnd": 69, "Literal": "87887901-e33c-497e-8788-7901e33c997e" } }, @@ -132,22 +132,22 @@ "LeftParenPos": 154, "RightParenPos": 217, "Items": { - "ListPos": 156, - "ListEnd": 216, + "ListPos": 155, + "ListEnd": 217, "HasDistinct": false, "Items": [ { "Expr": { - "LiteralPos": 156, - "LiteralEnd": 203, + "LiteralPos": 155, + "LiteralEnd": 204, "Literal": "/clickhouse/tables/{layer}/{shard}/default/test" }, "Alias": null }, { "Expr": { - "LiteralPos": 207, - "LiteralEnd": 216, + "LiteralPos": 206, + "LiteralEnd": 217, "Literal": "{replica}" }, "Alias": null @@ -161,7 +161,7 @@ "PartitionPos": 219, "Expr": { "ListPos": 232, - "ListEnd": 250, + "ListEnd": 251, "HasDistinct": false, "Items": [ { diff --git a/parser/testdata/ddl/output/create_table_with_ttl_policy.sql.golden.json b/parser/testdata/ddl/output/create_table_with_ttl_policy.sql.golden.json index 3ab8cc66..c6ae8c3d 100644 --- a/parser/testdata/ddl/output/create_table_with_ttl_policy.sql.golden.json +++ b/parser/testdata/ddl/output/create_table_with_ttl_policy.sql.golden.json @@ -1,7 +1,7 @@ [ { "CreatePos": 0, - "StatementEnd": 216, + "StatementEnd": 217, "OrReplace": false, "Name": { "Database": null, @@ -85,7 +85,7 @@ }, "Engine": { "EnginePos": 51, - "EngineEnd": 216, + "EngineEnd": 217, "Name": "MergeTree", "Params": null, "PrimaryKey": null, @@ -93,7 +93,7 @@ "PartitionPos": 70, "Expr": { "ListPos": 83, - "ListEnd": 93, + "ListEnd": 94, "HasDistinct": false, "Items": [ { @@ -134,7 +134,7 @@ "SampleBy": null, "TTL": { "TTLPos": 106, - "ListEnd": 216, + "ListEnd": 217, "Items": [ { "TTLPos": 106, @@ -213,8 +213,8 @@ "Item": { "RulePos": 163, "ToVolume": { - "LiteralPos": 174, - "LiteralEnd": 177, + "LiteralPos": 173, + "LiteralEnd": 178, "Literal": "aaa" }, "ToDisk": null, @@ -258,8 +258,8 @@ "RulePos": 204, "ToVolume": null, "ToDisk": { - "LiteralPos": 213, - "LiteralEnd": 216, + "LiteralPos": 212, + "LiteralEnd": 217, "Literal": "bbb" }, "Action": null, @@ -391,7 +391,7 @@ "PartitionPos": 304, "Expr": { "ListPos": 317, - "ListEnd": 327, + "ListEnd": 328, "HasDistinct": false, "Items": [ { @@ -881,7 +881,7 @@ }, "OrderBy": { "OrderPos": 508, - "ListEnd": 523, + "ListEnd": 524, "Items": [ { "OrderPos": 508, diff --git a/parser/testdata/ddl/output/create_table_with_tuple_fields.sql.golden.json b/parser/testdata/ddl/output/create_table_with_tuple_fields.sql.golden.json index d39c1d56..8c3818ee 100644 --- a/parser/testdata/ddl/output/create_table_with_tuple_fields.sql.golden.json +++ b/parser/testdata/ddl/output/create_table_with_tuple_fields.sql.golden.json @@ -350,22 +350,22 @@ "LeftParenPos": 234, "RightParenPos": 284, "Items": { - "ListPos": 236, - "ListEnd": 283, + "ListPos": 235, + "ListEnd": 284, "HasDistinct": false, "Items": [ { "Expr": { - "LiteralPos": 236, - "LiteralEnd": 270, + "LiteralPos": 235, + "LiteralEnd": 271, "Literal": "/clickhouse/tables/{layer}-{shard}" }, "Alias": null }, { "Expr": { - "LiteralPos": 274, - "LiteralEnd": 283, + "LiteralPos": 273, + "LiteralEnd": 284, "Literal": "{replica}" }, "Alias": null diff --git a/parser/testdata/ddl/output/create_table_with_uuid.sql.golden.json b/parser/testdata/ddl/output/create_table_with_uuid.sql.golden.json index 73ef1901..8113b7aa 100644 --- a/parser/testdata/ddl/output/create_table_with_uuid.sql.golden.json +++ b/parser/testdata/ddl/output/create_table_with_uuid.sql.golden.json @@ -20,16 +20,16 @@ "IfNotExists": true, "UUID": { "Value": { - "LiteralPos": 51, - "LiteralEnd": 55, + "LiteralPos": 50, + "LiteralEnd": 56, "Literal": "1234" } }, "OnCluster": { "OnPos": 57, "Expr": { - "LiteralPos": 69, - "LiteralEnd": 84, + "LiteralPos": 68, + "LiteralEnd": 85, "Literal": "default_cluster" } }, @@ -269,7 +269,7 @@ }, { "NamePos": 213, - "ColumnEnd": 237, + "ColumnEnd": 238, "Name": { "Ident": { "Name": "f7", @@ -327,22 +327,22 @@ "LeftParenPos": 269, "RightParenPos": 337, "Items": { - "ListPos": 271, - "ListEnd": 336, + "ListPos": 270, + "ListEnd": 337, "HasDistinct": false, "Items": [ { "Expr": { - "LiteralPos": 271, - "LiteralEnd": 323, + "LiteralPos": 270, + "LiteralEnd": 324, "Literal": "/clickhouse/tables/{layer}-{shard}/test/events_local" }, "Alias": null }, { "Expr": { - "LiteralPos": 327, - "LiteralEnd": 336, + "LiteralPos": 326, + "LiteralEnd": 337, "Literal": "{replica}" }, "Alias": null @@ -356,7 +356,7 @@ "PartitionPos": 365, "Expr": { "ListPos": 378, - "ListEnd": 391, + "ListEnd": 392, "HasDistinct": false, "Items": [ { diff --git a/parser/testdata/ddl/output/create_user.sql.golden.json b/parser/testdata/ddl/output/create_user.sql.golden.json index abf8dec6..a0f37f3c 100644 --- a/parser/testdata/ddl/output/create_user.sql.golden.json +++ b/parser/testdata/ddl/output/create_user.sql.golden.json @@ -150,7 +150,7 @@ }, { "CreatePos": 206, - "StatementEnd": 274, + "StatementEnd": 275, "IfNotExists": false, "OrReplace": false, "UserNames": [ @@ -167,12 +167,12 @@ ], "Authentication": { "AuthPos": 224, - "AuthEnd": 274, + "AuthEnd": 275, "NotIdentified": false, "AuthType": "plaintext_password", "AuthValue": { - "LiteralPos": 263, - "LiteralEnd": 274, + "LiteralPos": 262, + "LiteralEnd": 275, "Literal": "password123" }, "LdapServer": null, @@ -189,7 +189,7 @@ }, { "CreatePos": 277, - "StatementEnd": 338, + "StatementEnd": 339, "IfNotExists": false, "OrReplace": false, "UserNames": [ @@ -206,12 +206,12 @@ ], "Authentication": { "AuthPos": 295, - "AuthEnd": 338, + "AuthEnd": 339, "NotIdentified": false, "AuthType": "sha256_password", "AuthValue": { - "LiteralPos": 331, - "LiteralEnd": 338, + "LiteralPos": 330, + "LiteralEnd": 339, "Literal": "hash123" }, "LdapServer": null, @@ -228,7 +228,7 @@ }, { "CreatePos": 341, - "StatementEnd": 399, + "StatementEnd": 400, "IfNotExists": false, "OrReplace": false, "UserNames": [ @@ -245,13 +245,13 @@ ], "Authentication": { "AuthPos": 359, - "AuthEnd": 399, + "AuthEnd": 400, "NotIdentified": false, "AuthType": "", "AuthValue": null, "LdapServer": { - "LiteralPos": 388, - "LiteralEnd": 399, + "LiteralPos": 387, + "LiteralEnd": 400, "Literal": "ldap_server" }, "KerberosRealm": null, @@ -302,7 +302,7 @@ }, { "CreatePos": 447, - "StatementEnd": 509, + "StatementEnd": 510, "IfNotExists": false, "OrReplace": false, "UserNames": [ @@ -319,14 +319,14 @@ ], "Authentication": { "AuthPos": 466, - "AuthEnd": 509, + "AuthEnd": 510, "NotIdentified": false, "AuthType": "", "AuthValue": null, "LdapServer": null, "KerberosRealm": { - "LiteralPos": 498, - "LiteralEnd": 509, + "LiteralPos": 497, + "LiteralEnd": 510, "Literal": "EXAMPLE.COM" }, "IsKerberos": true @@ -341,7 +341,7 @@ }, { "CreatePos": 545, - "StatementEnd": 596, + "StatementEnd": 597, "IfNotExists": false, "OrReplace": false, "UserNames": [ @@ -358,8 +358,8 @@ ], "Authentication": null, "ValidUntil": { - "LiteralPos": 577, - "LiteralEnd": 596, + "LiteralPos": 576, + "LiteralEnd": 597, "Literal": "2026-12-12 00:00:00" }, "Hosts": null, @@ -371,7 +371,7 @@ }, { "CreatePos": 599, - "StatementEnd": 693, + "StatementEnd": 694, "IfNotExists": false, "OrReplace": false, "UserNames": [ @@ -388,12 +388,12 @@ ], "Authentication": { "AuthPos": 618, - "AuthEnd": 668, + "AuthEnd": 669, "NotIdentified": false, "AuthType": "plaintext_password", "AuthValue": { - "LiteralPos": 657, - "LiteralEnd": 668, + "LiteralPos": 656, + "LiteralEnd": 669, "Literal": "password123" }, "LdapServer": null, @@ -401,8 +401,8 @@ "IsKerberos": false }, "ValidUntil": { - "LiteralPos": 683, - "LiteralEnd": 693, + "LiteralPos": 682, + "LiteralEnd": 694, "Literal": "2026-06-15" }, "Hosts": null, @@ -414,7 +414,7 @@ }, { "CreatePos": 696, - "StatementEnd": 736, + "StatementEnd": 737, "IfNotExists": false, "OrReplace": false, "UserNames": [ @@ -431,8 +431,8 @@ ], "Authentication": null, "ValidUntil": { - "LiteralPos": 728, - "LiteralEnd": 736, + "LiteralPos": 727, + "LiteralEnd": 737, "Literal": "infinity" }, "Hosts": null, @@ -543,7 +543,7 @@ }, { "CreatePos": 868, - "StatementEnd": 907, + "StatementEnd": 908, "IfNotExists": false, "OrReplace": false, "UserNames": [ @@ -563,11 +563,11 @@ "Hosts": [ { "HostPos": 887, - "HostEnd": 907, + "HostEnd": 908, "HostType": "NAME", "HostValue": { - "LiteralPos": 898, - "LiteralEnd": 907, + "LiteralPos": 897, + "LiteralEnd": 908, "Literal": "localhost" } } @@ -580,7 +580,7 @@ }, { "CreatePos": 910, - "StatementEnd": 958, + "StatementEnd": 959, "IfNotExists": false, "OrReplace": false, "UserNames": [ @@ -600,11 +600,11 @@ "Hosts": [ { "HostPos": 929, - "HostEnd": 958, + "HostEnd": 959, "HostType": "REGEXP", "HostValue": { - "LiteralPos": 942, - "LiteralEnd": 958, + "LiteralPos": 941, + "LiteralEnd": 959, "Literal": ".*\\.example\\.com" } } @@ -617,7 +617,7 @@ }, { "CreatePos": 961, - "StatementEnd": 1000, + "StatementEnd": 1001, "IfNotExists": false, "OrReplace": false, "UserNames": [ @@ -637,11 +637,11 @@ "Hosts": [ { "HostPos": 980, - "HostEnd": 1000, + "HostEnd": 1001, "HostType": "IP", "HostValue": { - "LiteralPos": 989, - "LiteralEnd": 1000, + "LiteralPos": 988, + "LiteralEnd": 1001, "Literal": "192.168.1.1" } } @@ -654,7 +654,7 @@ }, { "CreatePos": 1003, - "StatementEnd": 1038, + "StatementEnd": 1039, "IfNotExists": false, "OrReplace": false, "UserNames": [ @@ -674,11 +674,11 @@ "Hosts": [ { "HostPos": 1022, - "HostEnd": 1038, + "HostEnd": 1039, "HostType": "LIKE", "HostValue": { - "LiteralPos": 1033, - "LiteralEnd": 1038, + "LiteralPos": 1032, + "LiteralEnd": 1039, "Literal": "test%" } } @@ -1149,7 +1149,7 @@ }, { "CreatePos": 1637, - "StatementEnd": 1681, + "StatementEnd": 1682, "IfNotExists": false, "OrReplace": false, "UserNames": [ @@ -1183,8 +1183,8 @@ }, "Operation": "", "Value": { - "LiteralPos": 1674, - "LiteralEnd": 1681, + "LiteralPos": 1673, + "LiteralEnd": 1682, "Literal": "default" } } @@ -1279,12 +1279,12 @@ ], "Authentication": { "AuthPos": 1819, - "AuthEnd": 1866, + "AuthEnd": 1867, "NotIdentified": false, "AuthType": "plaintext_password", "AuthValue": { - "LiteralPos": 1858, - "LiteralEnd": 1866, + "LiteralPos": 1857, + "LiteralEnd": 1867, "Literal": "password" }, "LdapServer": null, @@ -1292,18 +1292,18 @@ "IsKerberos": false }, "ValidUntil": { - "LiteralPos": 1885, - "LiteralEnd": 1895, + "LiteralPos": 1884, + "LiteralEnd": 1896, "Literal": "2025-12-31" }, "Hosts": [ { "HostPos": 1901, - "HostEnd": 1921, + "HostEnd": 1922, "HostType": "NAME", "HostValue": { - "LiteralPos": 1912, - "LiteralEnd": 1921, + "LiteralPos": 1911, + "LiteralEnd": 1922, "Literal": "localhost" } } diff --git a/parser/testdata/ddl/output/create_view_on_cluster_with_uuid.sql.golden.json b/parser/testdata/ddl/output/create_view_on_cluster_with_uuid.sql.golden.json index 3e341a49..9a851a6a 100644 --- a/parser/testdata/ddl/output/create_view_on_cluster_with_uuid.sql.golden.json +++ b/parser/testdata/ddl/output/create_view_on_cluster_with_uuid.sql.golden.json @@ -20,16 +20,16 @@ "IfNotExists": true, "UUID": { "Value": { - "LiteralPos": 61, - "LiteralEnd": 97, + "LiteralPos": 60, + "LiteralEnd": 98, "Literal": "3493e374-e2bb-481b-b493-e374e2bb981b" } }, "OnCluster": { "OnPos": 107, "Expr": { - "LiteralPos": 119, - "LiteralEnd": 129, + "LiteralPos": 118, + "LiteralEnd": 130, "Literal": "my_cluster" } }, diff --git a/parser/testdata/ddl/output/create_view_with_comment.sql.golden.json b/parser/testdata/ddl/output/create_view_with_comment.sql.golden.json index 6fab7b38..a9c5526c 100644 --- a/parser/testdata/ddl/output/create_view_with_comment.sql.golden.json +++ b/parser/testdata/ddl/output/create_view_with_comment.sql.golden.json @@ -89,8 +89,8 @@ "TableFunction": null }, "Comment": { - "LiteralPos": 84, - "LiteralEnd": 111, + "LiteralPos": 83, + "LiteralEnd": 112, "Literal": "{\"blueprint_hash\":\"abc123\"}" }, "SubQuery": { diff --git a/parser/testdata/ddl/output/create_with_time_zone.sql.golden.json b/parser/testdata/ddl/output/create_with_time_zone.sql.golden.json index 1215be01..10ae65ba 100644 --- a/parser/testdata/ddl/output/create_with_time_zone.sql.golden.json +++ b/parser/testdata/ddl/output/create_with_time_zone.sql.golden.json @@ -93,8 +93,8 @@ "Base": 10 }, { - "LiteralPos": 113, - "LiteralEnd": 116, + "LiteralPos": 112, + "LiteralEnd": 117, "Literal": "UTC" } ] @@ -557,8 +557,8 @@ "Base": 10 }, { - "LiteralPos": 431, - "LiteralEnd": 434, + "LiteralPos": 430, + "LiteralEnd": 435, "Literal": "UTC" } ] @@ -1753,7 +1753,7 @@ }, { "NamePos": 1351, - "ColumnEnd": 1378, + "ColumnEnd": 1379, "Name": { "Ident": { "Name": "f188", @@ -2108,7 +2108,7 @@ "PartitionPos": 1785, "Expr": { "ListPos": 1798, - "ListEnd": 1814, + "ListEnd": 1815, "HasDistinct": false, "Items": [ { @@ -2149,7 +2149,7 @@ "SampleBy": null, "TTL": { "TTLPos": 1899, - "ListEnd": 1939, + "ListEnd": 1940, "Items": [ { "TTLPos": 1899, @@ -2267,7 +2267,7 @@ "RightParenPos": 1893, "Items": { "ListPos": 1830, - "ListEnd": 1892, + "ListEnd": 1893, "HasDistinct": false, "Items": [ { diff --git a/parser/testdata/ddl/output/drop_role.sql.golden.json b/parser/testdata/ddl/output/drop_role.sql.golden.json index fb43780f..00dc7984 100644 --- a/parser/testdata/ddl/output/drop_role.sql.golden.json +++ b/parser/testdata/ddl/output/drop_role.sql.golden.json @@ -122,7 +122,7 @@ { "DropPos": 148, "Target": "ROLE", - "StatementEnd": 204, + "StatementEnd": 205, "Names": [ { "Name": { @@ -132,16 +132,16 @@ "NameEnd": 176 }, "Scope": { - "LiteralPos": 178, - "LiteralEnd": 179, + "LiteralPos": 177, + "LiteralEnd": 180, "Literal": "%" }, "OnCluster": null }, { "Name": { - "LiteralPos": 183, - "LiteralEnd": 204, + "LiteralPos": 182, + "LiteralEnd": 205, "Literal": "r2_01293@%.myhost.com" }, "Scope": null, diff --git a/parser/testdata/ddl/output/drop_table_with_no_delay.sql.golden.json b/parser/testdata/ddl/output/drop_table_with_no_delay.sql.golden.json index 08eb092c..e4ed147c 100644 --- a/parser/testdata/ddl/output/drop_table_with_no_delay.sql.golden.json +++ b/parser/testdata/ddl/output/drop_table_with_no_delay.sql.golden.json @@ -21,8 +21,8 @@ "OnCluster": { "OnPos": 37, "Expr": { - "LiteralPos": 49, - "LiteralEnd": 64, + "LiteralPos": 48, + "LiteralEnd": 65, "Literal": "default_cluster" } }, diff --git a/parser/testdata/ddl/output/drop_table_with_on_clsuter.sql.golden.json b/parser/testdata/ddl/output/drop_table_with_on_clsuter.sql.golden.json index f737fa2a..7777db70 100644 --- a/parser/testdata/ddl/output/drop_table_with_on_clsuter.sql.golden.json +++ b/parser/testdata/ddl/output/drop_table_with_on_clsuter.sql.golden.json @@ -21,8 +21,8 @@ "OnCluster": { "OnPos": 37, "Expr": { - "LiteralPos": 49, - "LiteralEnd": 64, + "LiteralPos": 48, + "LiteralEnd": 65, "Literal": "default_cluster" } }, diff --git a/parser/testdata/ddl/output/optimize.sql.golden.json b/parser/testdata/ddl/output/optimize.sql.golden.json index 31a555bd..e8e2896a 100644 --- a/parser/testdata/ddl/output/optimize.sql.golden.json +++ b/parser/testdata/ddl/output/optimize.sql.golden.json @@ -22,7 +22,7 @@ }, { "OptimizePos": 49, - "StatementEnd": 85, + "StatementEnd": 86, "Table": { "Database": null, "Table": { @@ -39,7 +39,7 @@ "DeduplicatePos": 70, "By": { "ListPos": 85, - "ListEnd": 85, + "ListEnd": 86, "HasDistinct": false, "Items": [ { @@ -47,7 +47,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 85, - "NameEnd": 85 + "NameEnd": 86 }, "Alias": null } @@ -112,7 +112,7 @@ }, { "OptimizePos": 183, - "StatementEnd": 219, + "StatementEnd": 220, "Table": { "Database": null, "Table": { @@ -129,7 +129,7 @@ "DeduplicatePos": 204, "By": { "ListPos": 219, - "ListEnd": 219, + "ListEnd": 220, "HasDistinct": false, "Items": [ { @@ -137,7 +137,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 219, - "NameEnd": 219 + "NameEnd": 220 }, "Alias": null } @@ -163,7 +163,7 @@ }, { "OptimizePos": 234, - "StatementEnd": 270, + "StatementEnd": 271, "Table": { "Database": null, "Table": { @@ -180,7 +180,7 @@ "DeduplicatePos": 255, "By": { "ListPos": 270, - "ListEnd": 270, + "ListEnd": 271, "HasDistinct": false, "Items": [ { @@ -188,7 +188,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 270, - "NameEnd": 270 + "NameEnd": 271 }, "Alias": null } @@ -238,7 +238,7 @@ }, { "OptimizePos": 293, - "StatementEnd": 362, + "StatementEnd": 363, "Table": { "Database": null, "Table": { @@ -255,7 +255,7 @@ "DeduplicatePos": 314, "By": { "ListPos": 329, - "ListEnd": 362, + "ListEnd": 363, "HasDistinct": false, "Items": [ { @@ -270,14 +270,14 @@ "LeftParenPos": 336, "RightParenPos": 362, "Items": { - "ListPos": 338, - "ListEnd": 361, + "ListPos": 337, + "ListEnd": 362, "HasDistinct": false, "Items": [ { "Expr": { - "LiteralPos": 338, - "LiteralEnd": 361, + "LiteralPos": 337, + "LiteralEnd": 362, "Literal": "column-matched-by-regex" }, "Alias": null @@ -296,7 +296,7 @@ }, { "OptimizePos": 365, - "StatementEnd": 434, + "StatementEnd": 435, "Table": { "Database": null, "Table": { @@ -313,7 +313,7 @@ "DeduplicatePos": 386, "By": { "ListPos": 401, - "ListEnd": 434, + "ListEnd": 435, "HasDistinct": false, "Items": [ { @@ -328,14 +328,14 @@ "LeftParenPos": 408, "RightParenPos": 434, "Items": { - "ListPos": 410, - "ListEnd": 433, + "ListPos": 409, + "ListEnd": 434, "HasDistinct": false, "Items": [ { "Expr": { - "LiteralPos": 410, - "LiteralEnd": 433, + "LiteralPos": 409, + "LiteralEnd": 434, "Literal": "column-matched-by-regex" }, "Alias": null @@ -369,7 +369,7 @@ }, { "OptimizePos": 449, - "StatementEnd": 518, + "StatementEnd": 519, "Table": { "Database": null, "Table": { @@ -386,7 +386,7 @@ "DeduplicatePos": 470, "By": { "ListPos": 485, - "ListEnd": 518, + "ListEnd": 519, "HasDistinct": false, "Items": [ { @@ -401,14 +401,14 @@ "LeftParenPos": 492, "RightParenPos": 518, "Items": { - "ListPos": 494, - "ListEnd": 517, + "ListPos": 493, + "ListEnd": 518, "HasDistinct": false, "Items": [ { "Expr": { - "LiteralPos": 494, - "LiteralEnd": 517, + "LiteralPos": 493, + "LiteralEnd": 518, "Literal": "column-matched-by-regex" }, "Alias": null diff --git a/parser/testdata/ddl/output/rename.sql.golden.json b/parser/testdata/ddl/output/rename.sql.golden.json index dfef0e7e..4b836bda 100644 --- a/parser/testdata/ddl/output/rename.sql.golden.json +++ b/parser/testdata/ddl/output/rename.sql.golden.json @@ -29,7 +29,7 @@ }, { "RenamePos": 40, - "StatementEnd": 90, + "StatementEnd": 91, "RenameTarget": "TABLE", "TargetPairList": [ { @@ -56,8 +56,8 @@ "OnCluster": { "OnPos": 63, "Expr": { - "LiteralPos": 75, - "LiteralEnd": 90, + "LiteralPos": 74, + "LiteralEnd": 91, "Literal": "default_cluster" } } @@ -112,7 +112,7 @@ }, { "RenamePos": 128, - "StatementEnd": 189, + "StatementEnd": 190, "RenameTarget": "TABLE", "TargetPairList": [ { @@ -159,8 +159,8 @@ "OnCluster": { "OnPos": 162, "Expr": { - "LiteralPos": 174, - "LiteralEnd": 189, + "LiteralPos": 173, + "LiteralEnd": 190, "Literal": "default_cluster" } } @@ -195,7 +195,7 @@ }, { "RenamePos": 245, - "StatementEnd": 300, + "StatementEnd": 301, "RenameTarget": "DICTIONARY", "TargetPairList": [ { @@ -222,8 +222,8 @@ "OnCluster": { "OnPos": 273, "Expr": { - "LiteralPos": 285, - "LiteralEnd": 300, + "LiteralPos": 284, + "LiteralEnd": 301, "Literal": "default_cluster" } } @@ -278,7 +278,7 @@ }, { "RenamePos": 343, - "StatementEnd": 409, + "StatementEnd": 410, "RenameTarget": "DICTIONARY", "TargetPairList": [ { @@ -325,8 +325,8 @@ "OnCluster": { "OnPos": 382, "Expr": { - "LiteralPos": 394, - "LiteralEnd": 409, + "LiteralPos": 393, + "LiteralEnd": 410, "Literal": "default_cluster" } } @@ -361,7 +361,7 @@ }, { "RenamePos": 458, - "StatementEnd": 511, + "StatementEnd": 512, "RenameTarget": "DATABASE", "TargetPairList": [ { @@ -388,8 +388,8 @@ "OnCluster": { "OnPos": 484, "Expr": { - "LiteralPos": 496, - "LiteralEnd": 511, + "LiteralPos": 495, + "LiteralEnd": 512, "Literal": "default_cluster" } } @@ -444,7 +444,7 @@ }, { "RenamePos": 552, - "StatementEnd": 616, + "StatementEnd": 617, "RenameTarget": "DATABASE", "TargetPairList": [ { @@ -491,8 +491,8 @@ "OnCluster": { "OnPos": 589, "Expr": { - "LiteralPos": 601, - "LiteralEnd": 616, + "LiteralPos": 600, + "LiteralEnd": 617, "Literal": "default_cluster" } } diff --git a/parser/testdata/ddl/output/show_databases_comprehensive.sql.golden.json b/parser/testdata/ddl/output/show_databases_comprehensive.sql.golden.json index b766f202..d716b812 100644 --- a/parser/testdata/ddl/output/show_databases_comprehensive.sql.golden.json +++ b/parser/testdata/ddl/output/show_databases_comprehensive.sql.golden.json @@ -7,8 +7,8 @@ "NotLike": false, "LikeType": "LIKE", "LikePattern": { - "LiteralPos": 21, - "LiteralEnd": 26, + "LiteralPos": 20, + "LiteralEnd": 27, "Literal": "prod%" }, "Limit": { @@ -18,8 +18,8 @@ "Base": 10 }, "OutFile": { - "LiteralPos": 50, - "LiteralEnd": 67, + "LiteralPos": 49, + "LiteralEnd": 68, "Literal": "/tmp/prod_dbs.txt" }, "Format": { diff --git a/parser/testdata/ddl/output/show_databases_format_string.sql.golden.json b/parser/testdata/ddl/output/show_databases_format_string.sql.golden.json index 4687a856..26567631 100644 --- a/parser/testdata/ddl/output/show_databases_format_string.sql.golden.json +++ b/parser/testdata/ddl/output/show_databases_format_string.sql.golden.json @@ -10,8 +10,8 @@ "Limit": null, "OutFile": null, "Format": { - "LiteralPos": 23, - "LiteralEnd": 35, + "LiteralPos": 22, + "LiteralEnd": 36, "Literal": "TabSeparated" } } diff --git a/parser/testdata/ddl/output/show_databases_ilike.sql.golden.json b/parser/testdata/ddl/output/show_databases_ilike.sql.golden.json index a7811c03..7f0099ce 100644 --- a/parser/testdata/ddl/output/show_databases_ilike.sql.golden.json +++ b/parser/testdata/ddl/output/show_databases_ilike.sql.golden.json @@ -7,8 +7,8 @@ "NotLike": false, "LikeType": "ILIKE", "LikePattern": { - "LiteralPos": 22, - "LiteralEnd": 27, + "LiteralPos": 21, + "LiteralEnd": 28, "Literal": "Test%" }, "Limit": null, diff --git a/parser/testdata/ddl/output/show_databases_like.sql.golden.json b/parser/testdata/ddl/output/show_databases_like.sql.golden.json index 964d7757..b40e4fe3 100644 --- a/parser/testdata/ddl/output/show_databases_like.sql.golden.json +++ b/parser/testdata/ddl/output/show_databases_like.sql.golden.json @@ -7,8 +7,8 @@ "NotLike": false, "LikeType": "LIKE", "LikePattern": { - "LiteralPos": 21, - "LiteralEnd": 26, + "LiteralPos": 20, + "LiteralEnd": 27, "Literal": "test%" }, "Limit": null, diff --git a/parser/testdata/ddl/output/show_databases_not_ilike.sql.golden.json b/parser/testdata/ddl/output/show_databases_not_ilike.sql.golden.json index 94f760d2..3b899afd 100644 --- a/parser/testdata/ddl/output/show_databases_not_ilike.sql.golden.json +++ b/parser/testdata/ddl/output/show_databases_not_ilike.sql.golden.json @@ -7,8 +7,8 @@ "NotLike": true, "LikeType": "ILIKE", "LikePattern": { - "LiteralPos": 26, - "LiteralEnd": 31, + "LiteralPos": 25, + "LiteralEnd": 32, "Literal": "Temp%" }, "Limit": null, diff --git a/parser/testdata/ddl/output/show_databases_not_like.sql.golden.json b/parser/testdata/ddl/output/show_databases_not_like.sql.golden.json index 1ef2b408..e18cc22c 100644 --- a/parser/testdata/ddl/output/show_databases_not_like.sql.golden.json +++ b/parser/testdata/ddl/output/show_databases_not_like.sql.golden.json @@ -7,8 +7,8 @@ "NotLike": true, "LikeType": "LIKE", "LikePattern": { - "LiteralPos": 25, - "LiteralEnd": 30, + "LiteralPos": 24, + "LiteralEnd": 31, "Literal": "temp%" }, "Limit": null, diff --git a/parser/testdata/ddl/output/show_databases_outfile.sql.golden.json b/parser/testdata/ddl/output/show_databases_outfile.sql.golden.json index a56a1516..a07782f4 100644 --- a/parser/testdata/ddl/output/show_databases_outfile.sql.golden.json +++ b/parser/testdata/ddl/output/show_databases_outfile.sql.golden.json @@ -9,8 +9,8 @@ "LikePattern": null, "Limit": null, "OutFile": { - "LiteralPos": 29, - "LiteralEnd": 47, + "LiteralPos": 28, + "LiteralEnd": 48, "Literal": "/tmp/databases.txt" }, "Format": null diff --git a/parser/testdata/ddl/output/truncate_temporary_table_on_clsuter.sql.golden.json b/parser/testdata/ddl/output/truncate_temporary_table_on_clsuter.sql.golden.json index 238a1eee..4899179a 100644 --- a/parser/testdata/ddl/output/truncate_temporary_table_on_clsuter.sql.golden.json +++ b/parser/testdata/ddl/output/truncate_temporary_table_on_clsuter.sql.golden.json @@ -1,7 +1,7 @@ [ { "TruncatePos": 0, - "StatementEnd": 78, + "StatementEnd": 79, "IsTemporary": true, "IfExists": true, "Name": { @@ -21,8 +21,8 @@ "OnCluster": { "OnPos": 51, "Expr": { - "LiteralPos": 63, - "LiteralEnd": 78, + "LiteralPos": 62, + "LiteralEnd": 79, "Literal": "default_cluster" } } diff --git a/parser/testdata/dml/output/alter_table_modify_ttl_multiple.sql.golden.json b/parser/testdata/dml/output/alter_table_modify_ttl_multiple.sql.golden.json index 59f75de5..82fca1e8 100644 --- a/parser/testdata/dml/output/alter_table_modify_ttl_multiple.sql.golden.json +++ b/parser/testdata/dml/output/alter_table_modify_ttl_multiple.sql.golden.json @@ -100,8 +100,8 @@ "RulePos": 113, "ToVolume": null, "ToDisk": { - "LiteralPos": 122, - "LiteralEnd": 125, + "LiteralPos": 121, + "LiteralEnd": 126, "Literal": "gcs" }, "Action": null, diff --git a/parser/testdata/dml/output/alter_table_with_comment.sql.golden.json b/parser/testdata/dml/output/alter_table_with_comment.sql.golden.json index 50e57cde..135fa137 100644 --- a/parser/testdata/dml/output/alter_table_with_comment.sql.golden.json +++ b/parser/testdata/dml/output/alter_table_with_comment.sql.golden.json @@ -1,7 +1,7 @@ [ { "AlterPos": 0, - "StatementEnd": 106, + "StatementEnd": 107, "TableIdentifier": { "Database": { "Name": "test", @@ -19,18 +19,18 @@ "OnCluster": { "OnPos": 30, "Expr": { - "LiteralPos": 42, - "LiteralEnd": 57, + "LiteralPos": 41, + "LiteralEnd": 58, "Literal": "default_cluster" } }, "AlterExprs": [ { "AddPos": 59, - "StatementEnd": 106, + "StatementEnd": 107, "Column": { "NamePos": 70, - "ColumnEnd": 106, + "ColumnEnd": 107, "Name": { "Ident": { "Name": "a", @@ -56,8 +56,8 @@ "NotNull": null, "Nullable": null, "DefaultExpr": { - "LiteralPos": 91, - "LiteralEnd": 91, + "LiteralPos": 90, + "LiteralEnd": 92, "Literal": "" }, "MaterializedExpr": null, @@ -66,7 +66,7 @@ "TTL": null, "Comment": { "LiteralPos": 93, - "LiteralEnd": 106, + "LiteralEnd": 107, "Literal": "test" }, "CompressionCodec": null @@ -79,7 +79,7 @@ }, { "AlterPos": 110, - "StatementEnd": 202, + "StatementEnd": 203, "TableIdentifier": { "Database": { "Name": "test", @@ -97,18 +97,18 @@ "OnCluster": { "OnPos": 140, "Expr": { - "LiteralPos": 152, - "LiteralEnd": 167, + "LiteralPos": 151, + "LiteralEnd": 168, "Literal": "default_cluster" } }, "AlterExprs": [ { "AddPos": 169, - "StatementEnd": 202, + "StatementEnd": 203, "Column": { "NamePos": 180, - "ColumnEnd": 202, + "ColumnEnd": 203, "Name": { "Ident": { "Name": "hello", @@ -129,8 +129,8 @@ "NotNull": null, "Nullable": null, "DefaultExpr": { - "LiteralPos": 202, - "LiteralEnd": 202, + "LiteralPos": 201, + "LiteralEnd": 203, "Literal": "" }, "MaterializedExpr": null, diff --git a/parser/testdata/dml/output/create_column_with_ttl.sql.golden.json b/parser/testdata/dml/output/create_column_with_ttl.sql.golden.json index 88d2b0ed..ae6c4e5c 100644 --- a/parser/testdata/dml/output/create_column_with_ttl.sql.golden.json +++ b/parser/testdata/dml/output/create_column_with_ttl.sql.golden.json @@ -1,7 +1,7 @@ [ { "CreatePos": 0, - "StatementEnd": 176, + "StatementEnd": 177, "OrReplace": false, "Name": { "Database": null, @@ -185,7 +185,7 @@ }, "Engine": { "EnginePos": 142, - "EngineEnd": 176, + "EngineEnd": 177, "Name": "MergeTree", "Params": null, "PrimaryKey": null, @@ -195,7 +195,7 @@ "Settings": null, "OrderBy": { "OrderPos": 161, - "ListEnd": 176, + "ListEnd": 177, "Items": [ { "OrderPos": 161, diff --git a/parser/testdata/dml/output/delete_from.sql.golden.json b/parser/testdata/dml/output/delete_from.sql.golden.json index dd4271d0..86929087 100644 --- a/parser/testdata/dml/output/delete_from.sql.golden.json +++ b/parser/testdata/dml/output/delete_from.sql.golden.json @@ -20,8 +20,8 @@ }, "Operation": "LIKE", "RightExpr": { - "LiteralPos": 35, - "LiteralEnd": 42, + "LiteralPos": 34, + "LiteralEnd": 43, "Literal": "%hello%" }, "HasGlobal": false, diff --git a/parser/testdata/dml/output/insert_values.sql.golden.json b/parser/testdata/dml/output/insert_values.sql.golden.json index 3222fc33..0120b85b 100644 --- a/parser/testdata/dml/output/insert_values.sql.golden.json +++ b/parser/testdata/dml/output/insert_values.sql.golden.json @@ -71,8 +71,8 @@ "Base": 10 }, { - "LiteralPos": 94, - "LiteralEnd": 112, + "LiteralPos": 93, + "LiteralEnd": 113, "Literal": "Hello, ClickHouse!" }, { @@ -113,8 +113,8 @@ "Base": 10 }, { - "LiteralPos": 182, - "LiteralEnd": 212, + "LiteralPos": 181, + "LiteralEnd": 213, "Literal": "Insert a lot of rows per batch" }, { @@ -155,8 +155,8 @@ "Base": 10 }, { - "LiteralPos": 270, - "LiteralEnd": 320, + "LiteralPos": 269, + "LiteralEnd": 321, "Literal": "Sort your data based on your commonly-used queries" }, { @@ -197,8 +197,8 @@ "Base": 10 }, { - "LiteralPos": 358, - "LiteralEnd": 403, + "LiteralPos": 357, + "LiteralEnd": 404, "Literal": "Granules are the smallest chunks of data read" }, { diff --git a/parser/testdata/dml/output/insert_with_placeholder.sql.golden.json b/parser/testdata/dml/output/insert_with_placeholder.sql.golden.json index 7c391144..22940be7 100644 --- a/parser/testdata/dml/output/insert_with_placeholder.sql.golden.json +++ b/parser/testdata/dml/output/insert_with_placeholder.sql.golden.json @@ -61,22 +61,22 @@ "Values": [ { "PlaceholderPos": 64, - "PlaceHolderEnd": 64, + "PlaceHolderEnd": 65, "Type": "?" }, { "PlaceholderPos": 67, - "PlaceHolderEnd": 67, + "PlaceHolderEnd": 68, "Type": "?" }, { "PlaceholderPos": 70, - "PlaceHolderEnd": 70, + "PlaceHolderEnd": 71, "Type": "?" }, { "PlaceholderPos": 73, - "PlaceHolderEnd": 73, + "PlaceHolderEnd": 74, "Type": "?" } ] @@ -87,22 +87,22 @@ "Values": [ { "PlaceholderPos": 82, - "PlaceHolderEnd": 82, + "PlaceHolderEnd": 83, "Type": "?" }, { "PlaceholderPos": 85, - "PlaceHolderEnd": 85, + "PlaceHolderEnd": 86, "Type": "?" }, { "PlaceholderPos": 88, - "PlaceHolderEnd": 88, + "PlaceHolderEnd": 89, "Type": "?" }, { "PlaceholderPos": 91, - "PlaceHolderEnd": 91, + "PlaceHolderEnd": 92, "Type": "?" } ] @@ -113,22 +113,22 @@ "Values": [ { "PlaceholderPos": 100, - "PlaceHolderEnd": 100, + "PlaceHolderEnd": 101, "Type": "?" }, { "PlaceholderPos": 103, - "PlaceHolderEnd": 103, + "PlaceHolderEnd": 104, "Type": "?" }, { "PlaceholderPos": 106, - "PlaceHolderEnd": 106, + "PlaceHolderEnd": 107, "Type": "?" }, { "PlaceholderPos": 109, - "PlaceHolderEnd": 109, + "PlaceHolderEnd": 110, "Type": "?" } ] @@ -139,22 +139,22 @@ "Values": [ { "PlaceholderPos": 118, - "PlaceHolderEnd": 118, + "PlaceHolderEnd": 119, "Type": "?" }, { "PlaceholderPos": 121, - "PlaceHolderEnd": 121, + "PlaceHolderEnd": 122, "Type": "?" }, { "PlaceholderPos": 124, - "PlaceHolderEnd": 124, + "PlaceHolderEnd": 125, "Type": "?" }, { "PlaceholderPos": 127, - "PlaceHolderEnd": 127, + "PlaceHolderEnd": 128, "Type": "?" } ] diff --git a/parser/testdata/query/output/access_tuple_with_dot.sql.golden.json b/parser/testdata/query/output/access_tuple_with_dot.sql.golden.json index ef355d5f..077e4308 100644 --- a/parser/testdata/query/output/access_tuple_with_dot.sql.golden.json +++ b/parser/testdata/query/output/access_tuple_with_dot.sql.golden.json @@ -20,30 +20,30 @@ "LeftParenPos": 12, "RightParenPos": 24, "Items": { - "ListPos": 14, - "ListEnd": 23, + "ListPos": 13, + "ListEnd": 24, "HasDistinct": false, "Items": [ { "Expr": { - "LiteralPos": 14, - "LiteralEnd": 15, + "LiteralPos": 13, + "LiteralEnd": 16, "Literal": "a" }, "Alias": null }, { "Expr": { - "LiteralPos": 18, - "LiteralEnd": 19, + "LiteralPos": 17, + "LiteralEnd": 20, "Literal": "b" }, "Alias": null }, { "Expr": { - "LiteralPos": 22, - "LiteralEnd": 23, + "LiteralPos": 21, + "LiteralEnd": 24, "Literal": "c" }, "Alias": null @@ -94,7 +94,7 @@ }, { "SelectPos": 37, - "StatementEnd": 336, + "StatementEnd": 337, "With": null, "Top": null, "HasDistinct": false, @@ -129,14 +129,14 @@ "LeftParenPos": 61, "RightParenPos": 102, "Items": { - "ListPos": 63, + "ListPos": 62, "ListEnd": 102, "HasDistinct": false, "Items": [ { "Expr": { - "LiteralPos": 63, - "LiteralEnd": 64, + "LiteralPos": 62, + "LiteralEnd": 65, "Literal": "a" }, "Alias": { @@ -148,8 +148,8 @@ }, { "Expr": { - "LiteralPos": 76, - "LiteralEnd": 77, + "LiteralPos": 75, + "LiteralEnd": 78, "Literal": "b" }, "Alias": { @@ -161,8 +161,8 @@ }, { "Expr": { - "LiteralPos": 91, - "LiteralEnd": 92, + "LiteralPos": 90, + "LiteralEnd": 93, "Literal": "c" }, "Alias": { @@ -316,14 +316,14 @@ "LeftParenPos": 167, "RightParenPos": 208, "Items": { - "ListPos": 169, + "ListPos": 168, "ListEnd": 208, "HasDistinct": false, "Items": [ { "Expr": { - "LiteralPos": 169, - "LiteralEnd": 170, + "LiteralPos": 168, + "LiteralEnd": 171, "Literal": "a" }, "Alias": { @@ -335,8 +335,8 @@ }, { "Expr": { - "LiteralPos": 182, - "LiteralEnd": 183, + "LiteralPos": 181, + "LiteralEnd": 184, "Literal": "b" }, "Alias": { @@ -348,8 +348,8 @@ }, { "Expr": { - "LiteralPos": 197, - "LiteralEnd": 198, + "LiteralPos": 196, + "LiteralEnd": 199, "Literal": "c" }, "Alias": { @@ -500,30 +500,30 @@ "LeftParenPos": 279, "RightParenPos": 291, "Items": { - "ListPos": 281, - "ListEnd": 290, + "ListPos": 280, + "ListEnd": 291, "HasDistinct": false, "Items": [ { "Expr": { - "LiteralPos": 281, - "LiteralEnd": 282, + "LiteralPos": 280, + "LiteralEnd": 283, "Literal": "a" }, "Alias": null }, { "Expr": { - "LiteralPos": 285, - "LiteralEnd": 286, + "LiteralPos": 284, + "LiteralEnd": 287, "Literal": "b" }, "Alias": null }, { "Expr": { - "LiteralPos": 289, - "LiteralEnd": 290, + "LiteralPos": 288, + "LiteralEnd": 291, "Literal": "c" }, "Alias": null @@ -572,30 +572,30 @@ "LeftParenPos": 321, "RightParenPos": 333, "Items": { - "ListPos": 323, - "ListEnd": 332, + "ListPos": 322, + "ListEnd": 333, "HasDistinct": false, "Items": [ { "Expr": { - "LiteralPos": 323, - "LiteralEnd": 324, + "LiteralPos": 322, + "LiteralEnd": 325, "Literal": "a" }, "Alias": null }, { "Expr": { - "LiteralPos": 327, - "LiteralEnd": 328, + "LiteralPos": 326, + "LiteralEnd": 329, "Literal": "b" }, "Alias": null }, { "Expr": { - "LiteralPos": 331, - "LiteralEnd": 332, + "LiteralPos": 330, + "LiteralEnd": 333, "Literal": "c" }, "Alias": null diff --git a/parser/testdata/query/output/create_window_view.sql.golden.json b/parser/testdata/query/output/create_window_view.sql.golden.json index 424d5c56..dcc562b6 100644 --- a/parser/testdata/query/output/create_window_view.sql.golden.json +++ b/parser/testdata/query/output/create_window_view.sql.golden.json @@ -1,7 +1,7 @@ [ { "CreatePos": 0, - "StatementEnd": 295, + "StatementEnd": 296, "OrReplace": true, "Name": { "Database": null, @@ -21,7 +21,7 @@ "HasParen": false, "Select": { "SelectPos": 31, - "StatementEnd": 295, + "StatementEnd": 296, "With": null, "Top": null, "HasDistinct": false, @@ -197,8 +197,8 @@ }, "Operation": "\u003e=", "RightExpr": { - "LiteralPos": 285, - "LiteralEnd": 295, + "LiteralPos": 284, + "LiteralEnd": 296, "Literal": "2023-01-01" }, "HasGlobal": false, diff --git a/parser/testdata/query/output/query_with_expr_compare.sql.golden.json b/parser/testdata/query/output/query_with_expr_compare.sql.golden.json index 44fbcfdd..a92bc429 100644 --- a/parser/testdata/query/output/query_with_expr_compare.sql.golden.json +++ b/parser/testdata/query/output/query_with_expr_compare.sql.golden.json @@ -1,7 +1,7 @@ [ { "SelectPos": 0, - "StatementEnd": 225, + "StatementEnd": 226, "With": null, "Top": null, "HasDistinct": false, @@ -40,14 +40,14 @@ "LeftParenPos": 30, "RightParenPos": 40, "Items": { - "ListPos": 32, + "ListPos": 31, "ListEnd": 40, "HasDistinct": false, "Items": [ { "Expr": { - "LiteralPos": 32, - "LiteralEnd": 33, + "LiteralPos": 31, + "LiteralEnd": 34, "Literal": "/" }, "Alias": null @@ -115,8 +115,8 @@ "SelectItems": [ { "Expr": { - "LiteralPos": 73, - "LiteralEnd": 90, + "LiteralPos": 72, + "LiteralEnd": 91, "Literal": "pathA/pathB/pathC" }, "Modifiers": [], @@ -129,8 +129,8 @@ }, { "Expr": { - "LiteralPos": 102, - "LiteralEnd": 112, + "LiteralPos": 101, + "LiteralEnd": 113, "Literal": "2024-09-10" }, "Modifiers": [], @@ -204,14 +204,14 @@ }, "Not": false, "Between": { - "LiteralPos": 156, - "LiteralEnd": 166, + "LiteralPos": 155, + "LiteralEnd": 167, "Literal": "2024-09-01" }, "AndPos": 168, "And": { - "LiteralPos": 173, - "LiteralEnd": 183, + "LiteralPos": 172, + "LiteralEnd": 184, "Literal": "2024-09-30" } }, @@ -229,14 +229,14 @@ "LeftParenPos": 202, "RightParenPos": 212, "Items": { - "ListPos": 204, + "ListPos": 203, "ListEnd": 212, "HasDistinct": false, "Items": [ { "Expr": { - "LiteralPos": 204, - "LiteralEnd": 205, + "LiteralPos": 203, + "LiteralEnd": 206, "Literal": "/" }, "Alias": null @@ -278,8 +278,8 @@ }, "Operation": "=", "RightExpr": { - "LiteralPos": 220, - "LiteralEnd": 225, + "LiteralPos": 219, + "LiteralEnd": 226, "Literal": "pathA" }, "HasGlobal": false, diff --git a/parser/testdata/query/output/select_case_multiple_when.sql.golden.json b/parser/testdata/query/output/select_case_multiple_when.sql.golden.json index 80dff03c..9abf82b6 100644 --- a/parser/testdata/query/output/select_case_multiple_when.sql.golden.json +++ b/parser/testdata/query/output/select_case_multiple_when.sql.golden.json @@ -1,7 +1,7 @@ [ { "SelectPos": 0, - "StatementEnd": 190, + "StatementEnd": 191, "With": null, "Top": null, "HasDistinct": false, @@ -12,7 +12,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 11, - "NameEnd": 11 + "NameEnd": 12 }, "Modifiers": [], "Alias": null @@ -35,16 +35,16 @@ }, "Operation": "=", "RightExpr": { - "LiteralPos": 44, - "LiteralEnd": 50, + "LiteralPos": 43, + "LiteralEnd": 51, "Literal": "value1" }, "HasGlobal": false, "HasNot": false }, "Then": { - "LiteralPos": 58, - "LiteralEnd": 63, + "LiteralPos": 57, + "LiteralEnd": 64, "Literal": "when1" }, "ElsePos": 0, @@ -62,16 +62,16 @@ }, "Operation": "=", "RightExpr": { - "LiteralPos": 86, - "LiteralEnd": 92, + "LiteralPos": 85, + "LiteralEnd": 93, "Literal": "value2" }, "HasGlobal": false, "HasNot": false }, "Then": { - "LiteralPos": 100, - "LiteralEnd": 105, + "LiteralPos": 99, + "LiteralEnd": 106, "Literal": "when2" }, "ElsePos": 0, @@ -80,8 +80,8 @@ ], "ElsePos": 115, "Else": { - "LiteralPos": 121, - "LiteralEnd": 125, + "LiteralPos": 120, + "LiteralEnd": 126, "Literal": "else" } }, @@ -130,8 +130,8 @@ }, "Operation": "=", "RightExpr": { - "LiteralPos": 181, - "LiteralEnd": 190, + "LiteralPos": 180, + "LiteralEnd": 191, "Literal": "123456789" }, "HasGlobal": false, diff --git a/parser/testdata/query/output/select_case_when_exists.sql.golden.json b/parser/testdata/query/output/select_case_when_exists.sql.golden.json index 033c5a84..1e51d10d 100644 --- a/parser/testdata/query/output/select_case_when_exists.sql.golden.json +++ b/parser/testdata/query/output/select_case_when_exists.sql.golden.json @@ -1,7 +1,7 @@ [ { "SelectPos": 0, - "StatementEnd": 205, + "StatementEnd": 206, "With": null, "Top": null, "HasDistinct": false, @@ -12,7 +12,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 11, - "NameEnd": 11 + "NameEnd": 12 }, "Modifiers": [], "Alias": null @@ -38,13 +38,13 @@ "RightParenPos": 100, "Items": { "ListPos": 43, - "ListEnd": 99, + "ListEnd": 100, "HasDistinct": false, "Items": [ { "Expr": { "SelectPos": 43, - "StatementEnd": 99, + "StatementEnd": 100, "With": null, "Top": null, "HasDistinct": false, @@ -97,8 +97,8 @@ }, "Operation": "=", "RightExpr": { - "LiteralPos": 90, - "LiteralEnd": 99, + "LiteralPos": 89, + "LiteralEnd": 100, "Literal": "999999999" }, "HasGlobal": false, @@ -126,8 +126,8 @@ } }, "Then": { - "LiteralPos": 116, - "LiteralEnd": 120, + "LiteralPos": 115, + "LiteralEnd": 121, "Literal": "then" }, "ElsePos": 0, @@ -136,8 +136,8 @@ ], "ElsePos": 130, "Else": { - "LiteralPos": 136, - "LiteralEnd": 140, + "LiteralPos": 135, + "LiteralEnd": 141, "Literal": "else" } }, @@ -186,8 +186,8 @@ }, "Operation": "=", "RightExpr": { - "LiteralPos": 196, - "LiteralEnd": 205, + "LiteralPos": 195, + "LiteralEnd": 206, "Literal": "123456789" }, "HasGlobal": false, diff --git a/parser/testdata/query/output/select_case_when_regexp.sql.golden.json b/parser/testdata/query/output/select_case_when_regexp.sql.golden.json index 70de1faf..4662d74f 100644 --- a/parser/testdata/query/output/select_case_when_regexp.sql.golden.json +++ b/parser/testdata/query/output/select_case_when_regexp.sql.golden.json @@ -25,8 +25,8 @@ }, "Operation": "REGEXP", "RightExpr": { - "LiteralPos": 33, - "LiteralEnd": 41, + "LiteralPos": 32, + "LiteralEnd": 42, "Literal": "^[0-9]+$" }, "HasGlobal": false, diff --git a/parser/testdata/query/output/select_cast.sql.golden.json b/parser/testdata/query/output/select_cast.sql.golden.json index 81a9910b..c311befa 100644 --- a/parser/testdata/query/output/select_cast.sql.golden.json +++ b/parser/testdata/query/output/select_cast.sql.golden.json @@ -73,8 +73,8 @@ "Separator": ",", "AsPos": 49, "AsType": { - "LiteralPos": 52, - "LiteralEnd": 59, + "LiteralPos": 51, + "LiteralEnd": 60, "Literal": "Float64" } }, @@ -313,8 +313,8 @@ "Separator": ",", "AsPos": 188, "AsType": { - "LiteralPos": 191, - "LiteralEnd": 197, + "LiteralPos": 190, + "LiteralEnd": 198, "Literal": "String" } }, diff --git a/parser/testdata/query/output/select_column_alias_string.sql.golden.json b/parser/testdata/query/output/select_column_alias_string.sql.golden.json index acdb7478..a702f182 100644 --- a/parser/testdata/query/output/select_column_alias_string.sql.golden.json +++ b/parser/testdata/query/output/select_column_alias_string.sql.golden.json @@ -9,8 +9,8 @@ "SelectItems": [ { "Expr": { - "LiteralPos": 8, - "LiteralEnd": 11, + "LiteralPos": 7, + "LiteralEnd": 12, "Literal": "abc" }, "Modifiers": [], diff --git a/parser/testdata/query/output/select_concat_expr.sql.golden.json b/parser/testdata/query/output/select_concat_expr.sql.golden.json index fcfbcbc9..a97adc8a 100644 --- a/parser/testdata/query/output/select_concat_expr.sql.golden.json +++ b/parser/testdata/query/output/select_concat_expr.sql.golden.json @@ -1,7 +1,7 @@ [ { "SelectPos": 0, - "StatementEnd": 16, + "StatementEnd": 17, "With": null, "Top": null, "HasDistinct": false, @@ -10,14 +10,14 @@ { "Expr": { "LeftExpr": { - "LiteralPos": 8, - "LiteralEnd": 9, + "LiteralPos": 7, + "LiteralEnd": 10, "Literal": "a" }, "Operation": "||", "RightExpr": { - "LiteralPos": 15, - "LiteralEnd": 16, + "LiteralPos": 14, + "LiteralEnd": 17, "Literal": "b" }, "HasGlobal": false, @@ -46,7 +46,7 @@ }, { "SelectPos": 19, - "StatementEnd": 42, + "StatementEnd": 43, "With": null, "Top": null, "HasDistinct": false, @@ -56,14 +56,14 @@ "Expr": { "LeftExpr": { "LeftExpr": { - "LiteralPos": 27, - "LiteralEnd": 28, + "LiteralPos": 26, + "LiteralEnd": 29, "Literal": "a" }, "Operation": "||", "RightExpr": { - "LiteralPos": 34, - "LiteralEnd": 35, + "LiteralPos": 33, + "LiteralEnd": 36, "Literal": "b" }, "HasGlobal": false, @@ -71,8 +71,8 @@ }, "Operation": "||", "RightExpr": { - "LiteralPos": 41, - "LiteralEnd": 42, + "LiteralPos": 40, + "LiteralEnd": 43, "Literal": "c" }, "HasGlobal": false, @@ -111,14 +111,14 @@ "Expr": { "LeftExpr": { "LeftExpr": { - "LiteralPos": 53, - "LiteralEnd": 54, + "LiteralPos": 52, + "LiteralEnd": 55, "Literal": "a" }, "Operation": "||", "RightExpr": { - "LiteralPos": 60, - "LiteralEnd": 61, + "LiteralPos": 59, + "LiteralEnd": 62, "Literal": "b" }, "HasGlobal": false, @@ -127,8 +127,8 @@ "Operation": "||", "RightExpr": { "LeftExpr": { - "LiteralPos": 67, - "LiteralEnd": 68, + "LiteralPos": 66, + "LiteralEnd": 69, "Literal": "c" }, "Operation": "+", diff --git a/parser/testdata/query/output/select_extract_with_regex.sql.golden.json b/parser/testdata/query/output/select_extract_with_regex.sql.golden.json index 8f027faf..cf9ae0c3 100644 --- a/parser/testdata/query/output/select_extract_with_regex.sql.golden.json +++ b/parser/testdata/query/output/select_extract_with_regex.sql.golden.json @@ -267,8 +267,8 @@ "NameEnd": 246 }, { - "LiteralPos": 249, - "LiteralEnd": 267, + "LiteralPos": 248, + "LiteralEnd": 268, "Literal": "((\\\\d+\\\\.){3}\\\\d+)" } ] @@ -302,8 +302,8 @@ ], "ElsePos": 293, "Else": { - "LiteralPos": 299, - "LiteralEnd": 302, + "LiteralPos": 298, + "LiteralEnd": 303, "Literal": "空" } }, @@ -346,8 +346,8 @@ "NameEnd": 351 }, { - "LiteralPos": 354, - "LiteralEnd": 372, + "LiteralPos": 353, + "LiteralEnd": 373, "Literal": "((\\\\d+\\\\.){3}\\\\d+)" } ] @@ -381,8 +381,8 @@ ], "ElsePos": 399, "Else": { - "LiteralPos": 405, - "LiteralEnd": 408, + "LiteralPos": 404, + "LiteralEnd": 409, "Literal": "空" } }, diff --git a/parser/testdata/query/output/select_function_keyword_args.sql.golden.json b/parser/testdata/query/output/select_function_keyword_args.sql.golden.json index 76eff19a..4331d483 100644 --- a/parser/testdata/query/output/select_function_keyword_args.sql.golden.json +++ b/parser/testdata/query/output/select_function_keyword_args.sql.golden.json @@ -1,7 +1,7 @@ [ { "SelectPos": 0, - "StatementEnd": 31, + "StatementEnd": 32, "With": null, "Top": null, "HasDistinct": false, @@ -20,7 +20,7 @@ "RightParenPos": 31, "Items": { "ListPos": 12, - "ListEnd": 30, + "ListEnd": 31, "HasDistinct": false, "Items": [ { @@ -29,15 +29,15 @@ "UnaryPos": 12, "Kind": "BOTH", "Expr": { - "LiteralPos": 18, - "LiteralEnd": 19, + "LiteralPos": 17, + "LiteralEnd": 20, "Literal": " " } }, "Operation": "FROM", "RightExpr": { - "LiteralPos": 27, - "LiteralEnd": 30, + "LiteralPos": 26, + "LiteralEnd": 31, "Literal": " x " }, "HasGlobal": false, @@ -73,7 +73,7 @@ }, { "SelectPos": 34, - "StatementEnd": 70, + "StatementEnd": 71, "With": null, "Top": null, "HasDistinct": false, @@ -92,7 +92,7 @@ "RightParenPos": 70, "Items": { "ListPos": 46, - "ListEnd": 69, + "ListEnd": 70, "HasDistinct": false, "Items": [ { @@ -101,15 +101,15 @@ "UnaryPos": 46, "Kind": "LEADING", "Expr": { - "LiteralPos": 55, - "LiteralEnd": 56, + "LiteralPos": 54, + "LiteralEnd": 57, "Literal": "0" } }, "Operation": "FROM", "RightExpr": { - "LiteralPos": 64, - "LiteralEnd": 69, + "LiteralPos": 63, + "LiteralEnd": 70, "Literal": "00042" }, "HasGlobal": false, @@ -145,7 +145,7 @@ }, { "SelectPos": 73, - "StatementEnd": 110, + "StatementEnd": 111, "With": null, "Top": null, "HasDistinct": false, @@ -164,7 +164,7 @@ "RightParenPos": 110, "Items": { "ListPos": 85, - "ListEnd": 109, + "ListEnd": 110, "HasDistinct": false, "Items": [ { @@ -173,15 +173,15 @@ "UnaryPos": 85, "Kind": "TRAILING", "Expr": { - "LiteralPos": 95, - "LiteralEnd": 96, + "LiteralPos": 94, + "LiteralEnd": 97, "Literal": "/" } }, "Operation": "FROM", "RightExpr": { - "LiteralPos": 104, - "LiteralEnd": 109, + "LiteralPos": 103, + "LiteralEnd": 110, "Literal": "/api/" }, "HasGlobal": false, @@ -217,7 +217,7 @@ }, { "SelectPos": 113, - "StatementEnd": 144, + "StatementEnd": 145, "With": null, "Top": null, "HasDistinct": false, @@ -235,15 +235,15 @@ "LeftParenPos": 129, "RightParenPos": 144, "Items": { - "ListPos": 131, + "ListPos": 130, "ListEnd": 144, "HasDistinct": false, "Items": [ { "Expr": { "LeftExpr": { - "LiteralPos": 131, - "LiteralEnd": 136, + "LiteralPos": 130, + "LiteralEnd": 137, "Literal": "hello" }, "Operation": "FROM", @@ -286,7 +286,7 @@ }, { "SelectPos": 147, - "StatementEnd": 184, + "StatementEnd": 185, "With": null, "Top": null, "HasDistinct": false, @@ -304,7 +304,7 @@ "LeftParenPos": 163, "RightParenPos": 184, "Items": { - "ListPos": 165, + "ListPos": 164, "ListEnd": 184, "HasDistinct": false, "Items": [ @@ -312,8 +312,8 @@ "Expr": { "LeftExpr": { "LeftExpr": { - "LiteralPos": 165, - "LiteralEnd": 170, + "LiteralPos": 164, + "LiteralEnd": 171, "Literal": "hello" }, "Operation": "FROM", @@ -366,7 +366,7 @@ }, { "SelectPos": 187, - "StatementEnd": 220, + "StatementEnd": 221, "With": null, "Top": null, "HasDistinct": false, @@ -384,14 +384,14 @@ "LeftParenPos": 203, "RightParenPos": 220, "Items": { - "ListPos": 205, + "ListPos": 204, "ListEnd": 220, "HasDistinct": false, "Items": [ { "Expr": { - "LiteralPos": 205, - "LiteralEnd": 210, + "LiteralPos": 204, + "LiteralEnd": 211, "Literal": "hello" }, "Alias": null @@ -444,7 +444,7 @@ }, { "SelectPos": 223, - "StatementEnd": 257, + "StatementEnd": 258, "With": null, "Top": null, "HasDistinct": false, @@ -462,15 +462,15 @@ "LeftParenPos": 239, "RightParenPos": 257, "Items": { - "ListPos": 241, + "ListPos": 240, "ListEnd": 257, "HasDistinct": false, "Items": [ { "Expr": { "LeftExpr": { - "LiteralPos": 241, - "LiteralEnd": 246, + "LiteralPos": 240, + "LiteralEnd": 247, "Literal": "hello" }, "Operation": "FROM", @@ -541,7 +541,7 @@ "RightParenPos": 311, "Items": { "ListPos": 277, - "ListEnd": 310, + "ListEnd": 311, "HasDistinct": false, "Items": [ { @@ -691,7 +691,7 @@ }, { "SelectPos": 321, - "StatementEnd": 370, + "StatementEnd": 371, "With": null, "Top": null, "HasDistinct": false, @@ -709,7 +709,7 @@ "LeftParenPos": 335, "RightParenPos": 370, "Items": { - "ListPos": 337, + "ListPos": 336, "ListEnd": 370, "HasDistinct": false, "Items": [ @@ -717,14 +717,14 @@ "Expr": { "LeftExpr": { "LeftExpr": { - "LiteralPos": 337, - "LiteralEnd": 348, + "LiteralPos": 336, + "LiteralEnd": 349, "Literal": "Hello world" }, "Operation": "PLACING", "RightExpr": { - "LiteralPos": 359, - "LiteralEnd": 362, + "LiteralPos": 358, + "LiteralEnd": 363, "Literal": "SQL" }, "HasGlobal": false, @@ -770,7 +770,7 @@ }, { "SelectPos": 373, - "StatementEnd": 428, + "StatementEnd": 429, "With": null, "Top": null, "HasDistinct": false, @@ -788,7 +788,7 @@ "LeftParenPos": 387, "RightParenPos": 428, "Items": { - "ListPos": 389, + "ListPos": 388, "ListEnd": 428, "HasDistinct": false, "Items": [ @@ -797,14 +797,14 @@ "LeftExpr": { "LeftExpr": { "LeftExpr": { - "LiteralPos": 389, - "LiteralEnd": 400, + "LiteralPos": 388, + "LiteralEnd": 401, "Literal": "Hello world" }, "Operation": "PLACING", "RightExpr": { - "LiteralPos": 411, - "LiteralEnd": 414, + "LiteralPos": 410, + "LiteralEnd": 415, "Literal": "SQL" }, "HasGlobal": false, @@ -879,7 +879,7 @@ "RightParenPos": 483, "Items": { "ListPos": 450, - "ListEnd": 482, + "ListEnd": 483, "HasDistinct": false, "Items": [ { @@ -1172,7 +1172,7 @@ }, { "SelectPos": 564, - "StatementEnd": 616, + "StatementEnd": 617, "With": null, "Top": null, "HasDistinct": false, @@ -1190,14 +1190,14 @@ "LeftParenPos": 575, "RightParenPos": 584, "Items": { - "ListPos": 577, + "ListPos": 576, "ListEnd": 584, "HasDistinct": false, "Items": [ { "Expr": { - "LiteralPos": 577, - "LiteralEnd": 578, + "LiteralPos": 576, + "LiteralEnd": 579, "Literal": "x" }, "Alias": { @@ -1227,15 +1227,15 @@ "LeftParenPos": 596, "RightParenPos": 616, "Items": { - "ListPos": 598, + "ListPos": 597, "ListEnd": 616, "HasDistinct": false, "Items": [ { "Expr": { "LeftExpr": { - "LiteralPos": 598, - "LiteralEnd": 603, + "LiteralPos": 597, + "LiteralEnd": 604, "Literal": "hello" }, "Operation": "FROM", @@ -1283,7 +1283,7 @@ }, { "SelectPos": 619, - "StatementEnd": 648, + "StatementEnd": 649, "With": null, "Top": null, "HasDistinct": false, @@ -1301,22 +1301,22 @@ "LeftParenPos": 634, "RightParenPos": 648, "Items": { - "ListPos": 636, - "ListEnd": 647, + "ListPos": 635, + "ListEnd": 648, "HasDistinct": false, "Items": [ { "Expr": { - "LiteralPos": 636, - "LiteralEnd": 642, + "LiteralPos": 635, + "LiteralEnd": 643, "Literal": "xxhixx" }, "Alias": null }, { "Expr": { - "LiteralPos": 646, - "LiteralEnd": 647, + "LiteralPos": 645, + "LiteralEnd": 648, "Literal": "x" }, "Alias": null @@ -1349,7 +1349,7 @@ }, { "SelectPos": 651, - "StatementEnd": 702, + "StatementEnd": 703, "With": null, "Top": null, "HasDistinct": false, @@ -1367,22 +1367,22 @@ "LeftParenPos": 666, "RightParenPos": 678, "Items": { - "ListPos": 668, - "ListEnd": 677, + "ListPos": 667, + "ListEnd": 678, "HasDistinct": false, "Items": [ { "Expr": { - "LiteralPos": 668, - "LiteralEnd": 672, + "LiteralPos": 667, + "LiteralEnd": 673, "Literal": "xxhi" }, "Alias": null }, { "Expr": { - "LiteralPos": 676, - "LiteralEnd": 677, + "LiteralPos": 675, + "LiteralEnd": 678, "Literal": "x" }, "Alias": null @@ -1407,22 +1407,22 @@ "LeftParenPos": 690, "RightParenPos": 702, "Items": { - "ListPos": 692, - "ListEnd": 701, + "ListPos": 691, + "ListEnd": 702, "HasDistinct": false, "Items": [ { "Expr": { - "LiteralPos": 692, - "LiteralEnd": 696, + "LiteralPos": 691, + "LiteralEnd": 697, "Literal": "hixx" }, "Alias": null }, { "Expr": { - "LiteralPos": 700, - "LiteralEnd": 701, + "LiteralPos": 699, + "LiteralEnd": 702, "Literal": "x" }, "Alias": null @@ -1455,7 +1455,7 @@ }, { "SelectPos": 705, - "StatementEnd": 741, + "StatementEnd": 742, "With": null, "Top": null, "HasDistinct": false, @@ -1473,14 +1473,14 @@ "LeftParenPos": 717, "RightParenPos": 725, "Items": { - "ListPos": 719, - "ListEnd": 724, + "ListPos": 718, + "ListEnd": 725, "HasDistinct": false, "Items": [ { "Expr": { - "LiteralPos": 719, - "LiteralEnd": 724, + "LiteralPos": 718, + "LiteralEnd": 725, "Literal": " x " }, "Alias": null @@ -1505,14 +1505,14 @@ "LeftParenPos": 733, "RightParenPos": 741, "Items": { - "ListPos": 735, - "ListEnd": 740, + "ListPos": 734, + "ListEnd": 741, "HasDistinct": false, "Items": [ { "Expr": { - "LiteralPos": 735, - "LiteralEnd": 740, + "LiteralPos": 734, + "LiteralEnd": 741, "Literal": " x " }, "Alias": null @@ -1545,7 +1545,7 @@ }, { "SelectPos": 744, - "StatementEnd": 794, + "StatementEnd": 795, "With": null, "Top": null, "HasDistinct": false, @@ -1563,21 +1563,21 @@ "LeftParenPos": 759, "RightParenPos": 772, "Items": { - "ListPos": 761, - "ListEnd": 771, + "ListPos": 760, + "ListEnd": 772, "HasDistinct": false, "Items": [ { "Expr": { "LeftExpr": { - "LiteralPos": 761, - "LiteralEnd": 762, + "LiteralPos": 760, + "LiteralEnd": 763, "Literal": "a" }, "Operation": "IN", "RightExpr": { - "LiteralPos": 768, - "LiteralEnd": 771, + "LiteralPos": 767, + "LiteralEnd": 772, "Literal": "abc" }, "HasGlobal": false, @@ -1605,21 +1605,21 @@ "LeftParenPos": 781, "RightParenPos": 794, "Items": { - "ListPos": 783, - "ListEnd": 793, + "ListPos": 782, + "ListEnd": 794, "HasDistinct": false, "Items": [ { "Expr": { "LeftExpr": { - "LiteralPos": 783, - "LiteralEnd": 784, + "LiteralPos": 782, + "LiteralEnd": 785, "Literal": "a" }, "Operation": "IN", "RightExpr": { - "LiteralPos": 790, - "LiteralEnd": 793, + "LiteralPos": 789, + "LiteralEnd": 794, "Literal": "abc" }, "HasGlobal": false, @@ -1665,8 +1665,8 @@ "Expr": { "CastPos": 804, "Expr": { - "LiteralPos": 810, - "LiteralEnd": 811, + "LiteralPos": 809, + "LiteralEnd": 812, "Literal": "1" }, "Separator": "AS", @@ -1703,7 +1703,7 @@ }, { "SelectPos": 825, - "StatementEnd": 882, + "StatementEnd": 883, "With": null, "Top": null, "HasDistinct": false, @@ -1721,14 +1721,14 @@ "LeftParenPos": 845, "RightParenPos": 859, "Items": { - "ListPos": 847, + "ListPos": 846, "ListEnd": 859, "HasDistinct": false, "Items": [ { "Expr": { - "LiteralPos": 847, - "LiteralEnd": 852, + "LiteralPos": 846, + "LiteralEnd": 853, "Literal": "hello" }, "Alias": null @@ -1771,14 +1771,14 @@ "LeftParenPos": 868, "RightParenPos": 882, "Items": { - "ListPos": 870, + "ListPos": 869, "ListEnd": 882, "HasDistinct": false, "Items": [ { "Expr": { - "LiteralPos": 870, - "LiteralEnd": 875, + "LiteralPos": 869, + "LiteralEnd": 876, "Literal": "hello" }, "Alias": null @@ -1829,7 +1829,7 @@ }, { "SelectPos": 885, - "StatementEnd": 935, + "StatementEnd": 936, "With": null, "Top": null, "HasDistinct": false, @@ -1847,14 +1847,14 @@ "LeftParenPos": 895, "RightParenPos": 909, "Items": { - "ListPos": 897, + "ListPos": 896, "ListEnd": 909, "HasDistinct": false, "Items": [ { "Expr": { - "LiteralPos": 897, - "LiteralEnd": 902, + "LiteralPos": 896, + "LiteralEnd": 903, "Literal": "hello" }, "Alias": null @@ -1897,14 +1897,14 @@ "LeftParenPos": 921, "RightParenPos": 935, "Items": { - "ListPos": 923, + "ListPos": 922, "ListEnd": 935, "HasDistinct": false, "Items": [ { "Expr": { - "LiteralPos": 923, - "LiteralEnd": 928, + "LiteralPos": 922, + "LiteralEnd": 929, "Literal": "hello" }, "Alias": null diff --git a/parser/testdata/query/output/select_intersect.sql.golden.json b/parser/testdata/query/output/select_intersect.sql.golden.json index fb641175..17591c15 100644 --- a/parser/testdata/query/output/select_intersect.sql.golden.json +++ b/parser/testdata/query/output/select_intersect.sql.golden.json @@ -1,7 +1,7 @@ [ { "SelectPos": 0, - "StatementEnd": 8, + "StatementEnd": 27, "With": null, "Top": null, "HasDistinct": false, @@ -72,7 +72,7 @@ }, { "SelectPos": 29, - "StatementEnd": 58, + "StatementEnd": 102, "With": null, "Top": null, "HasDistinct": false, @@ -215,7 +215,7 @@ }, { "SelectPos": 105, - "StatementEnd": 121, + "StatementEnd": 172, "With": null, "Top": null, "HasDistinct": false, @@ -270,7 +270,7 @@ "UnionDistinct": null, "Except": { "SelectPos": 129, - "StatementEnd": 145, + "StatementEnd": 172, "With": null, "Top": null, "HasDistinct": false, diff --git a/parser/testdata/query/output/select_item_with_modifiers.sql.golden.json b/parser/testdata/query/output/select_item_with_modifiers.sql.golden.json index a73497da..9186cd5d 100644 --- a/parser/testdata/query/output/select_item_with_modifiers.sql.golden.json +++ b/parser/testdata/query/output/select_item_with_modifiers.sql.golden.json @@ -105,7 +105,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 44, - "NameEnd": 44 + "NameEnd": 45 }, "Modifiers": [ { @@ -209,7 +209,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 82, - "NameEnd": 82 + "NameEnd": 83 }, "Modifiers": [ { diff --git a/parser/testdata/query/output/select_json_type.sql.golden.json b/parser/testdata/query/output/select_json_type.sql.golden.json index be57ed5c..b30b10f1 100644 --- a/parser/testdata/query/output/select_json_type.sql.golden.json +++ b/parser/testdata/query/output/select_json_type.sql.golden.json @@ -95,7 +95,7 @@ }, { "SelectPos": 26, - "StatementEnd": 75, + "StatementEnd": 76, "With": null, "Top": null, "HasDistinct": false, @@ -113,22 +113,22 @@ "LeftParenPos": 42, "RightParenPos": 75, "Items": { - "ListPos": 44, - "ListEnd": 74, + "ListPos": 43, + "ListEnd": 75, "HasDistinct": false, "Items": [ { "Expr": { - "LiteralPos": 44, - "LiteralEnd": 67, + "LiteralPos": 43, + "LiteralEnd": 68, "Literal": "{\"a\": 1, \"b\": {\"c\": 2}}" }, "Alias": null }, { "Expr": { - "LiteralPos": 71, - "LiteralEnd": 74, + "LiteralPos": 70, + "LiteralEnd": 75, "Literal": "$.b" }, "Alias": null @@ -179,8 +179,8 @@ "Separator": ",", "AsPos": 94, "AsType": { - "LiteralPos": 97, - "LiteralEnd": 103, + "LiteralPos": 96, + "LiteralEnd": 104, "Literal": "String" } }, @@ -240,8 +240,8 @@ "Separator": ",", "AsPos": 137, "AsType": { - "LiteralPos": 140, - "LiteralEnd": 146, + "LiteralPos": 139, + "LiteralEnd": 147, "Literal": "String" } }, @@ -307,8 +307,8 @@ "Separator": ",", "AsPos": 185, "AsType": { - "LiteralPos": 188, - "LiteralEnd": 194, + "LiteralPos": 187, + "LiteralEnd": 195, "Literal": "String" } }, @@ -380,8 +380,8 @@ "Separator": ",", "AsPos": 238, "AsType": { - "LiteralPos": 241, - "LiteralEnd": 247, + "LiteralPos": 240, + "LiteralEnd": 248, "Literal": "String" } }, diff --git a/parser/testdata/query/output/select_keyword_alias_no_as.sql.golden.json b/parser/testdata/query/output/select_keyword_alias_no_as.sql.golden.json index 654af81e..698decac 100644 --- a/parser/testdata/query/output/select_keyword_alias_no_as.sql.golden.json +++ b/parser/testdata/query/output/select_keyword_alias_no_as.sql.golden.json @@ -9,8 +9,8 @@ "SelectItems": [ { "Expr": { - "LiteralPos": 8, - "LiteralEnd": 11, + "LiteralPos": 7, + "LiteralEnd": 12, "Literal": "Joe" }, "Modifiers": [], diff --git a/parser/testdata/query/output/select_order_by_with_fill_basic.sql.golden.json b/parser/testdata/query/output/select_order_by_with_fill_basic.sql.golden.json index ab862bd8..9e5536ca 100644 --- a/parser/testdata/query/output/select_order_by_with_fill_basic.sql.golden.json +++ b/parser/testdata/query/output/select_order_by_with_fill_basic.sql.golden.json @@ -96,8 +96,8 @@ }, { "Expr": { - "LiteralPos": 64, - "LiteralEnd": 72, + "LiteralPos": 63, + "LiteralEnd": 73, "Literal": "original" }, "Modifiers": [], diff --git a/parser/testdata/query/output/select_order_by_with_fill_from_to.sql.golden.json b/parser/testdata/query/output/select_order_by_with_fill_from_to.sql.golden.json index 26534232..c55c8139 100644 --- a/parser/testdata/query/output/select_order_by_with_fill_from_to.sql.golden.json +++ b/parser/testdata/query/output/select_order_by_with_fill_from_to.sql.golden.json @@ -96,8 +96,8 @@ }, { "Expr": { - "LiteralPos": 64, - "LiteralEnd": 72, + "LiteralPos": 63, + "LiteralEnd": 73, "Literal": "original" }, "Modifiers": [], diff --git a/parser/testdata/query/output/select_order_by_with_fill_interpolate.sql.golden.json b/parser/testdata/query/output/select_order_by_with_fill_interpolate.sql.golden.json index be666afd..121d36f0 100644 --- a/parser/testdata/query/output/select_order_by_with_fill_interpolate.sql.golden.json +++ b/parser/testdata/query/output/select_order_by_with_fill_interpolate.sql.golden.json @@ -106,8 +106,8 @@ }, { "Expr": { - "LiteralPos": 71, - "LiteralEnd": 79, + "LiteralPos": 70, + "LiteralEnd": 80, "Literal": "original" }, "Modifiers": [], diff --git a/parser/testdata/query/output/select_order_by_with_fill_staleness.sql.golden.json b/parser/testdata/query/output/select_order_by_with_fill_staleness.sql.golden.json index 15c8e500..7bebefb6 100644 --- a/parser/testdata/query/output/select_order_by_with_fill_staleness.sql.golden.json +++ b/parser/testdata/query/output/select_order_by_with_fill_staleness.sql.golden.json @@ -50,8 +50,8 @@ }, { "Expr": { - "LiteralPos": 41, - "LiteralEnd": 49, + "LiteralPos": 40, + "LiteralEnd": 50, "Literal": "original" }, "Modifiers": [], diff --git a/parser/testdata/query/output/select_order_by_with_fill_step.sql.golden.json b/parser/testdata/query/output/select_order_by_with_fill_step.sql.golden.json index cae53cd5..bea39251 100644 --- a/parser/testdata/query/output/select_order_by_with_fill_step.sql.golden.json +++ b/parser/testdata/query/output/select_order_by_with_fill_step.sql.golden.json @@ -58,14 +58,14 @@ "LeftParenPos": 43, "RightParenPos": 56, "Items": { - "ListPos": 45, - "ListEnd": 55, + "ListPos": 44, + "ListEnd": 56, "HasDistinct": false, "Items": [ { "Expr": { - "LiteralPos": 45, - "LiteralEnd": 55, + "LiteralPos": 44, + "LiteralEnd": 56, "Literal": "2020-01-01" }, "Alias": null diff --git a/parser/testdata/query/output/select_regexp.sql.golden.json b/parser/testdata/query/output/select_regexp.sql.golden.json index 8683fdc9..59c59dac 100644 --- a/parser/testdata/query/output/select_regexp.sql.golden.json +++ b/parser/testdata/query/output/select_regexp.sql.golden.json @@ -1,7 +1,7 @@ [ { "SelectPos": 0, - "StatementEnd": 42, + "StatementEnd": 43, "With": null, "Top": null, "HasDistinct": false, @@ -64,8 +64,8 @@ }, "Operation": "REGEXP", "RightExpr": { - "LiteralPos": 38, - "LiteralEnd": 42, + "LiteralPos": 37, + "LiteralEnd": 43, "Literal": "^foo" }, "HasGlobal": false, diff --git a/parser/testdata/query/output/select_signed_number_after_bracket.sql.golden.json b/parser/testdata/query/output/select_signed_number_after_bracket.sql.golden.json index 7b3f8fe5..95671554 100644 --- a/parser/testdata/query/output/select_signed_number_after_bracket.sql.golden.json +++ b/parser/testdata/query/output/select_signed_number_after_bracket.sql.golden.json @@ -224,7 +224,7 @@ "RightParenPos": 76, "Items": { "ListPos": 71, - "ListEnd": 75, + "ListEnd": 76, "HasDistinct": false, "Items": [ { diff --git a/parser/testdata/query/output/select_simple.sql.golden.json b/parser/testdata/query/output/select_simple.sql.golden.json index ab83ec3b..1322c9f9 100644 --- a/parser/testdata/query/output/select_simple.sql.golden.json +++ b/parser/testdata/query/output/select_simple.sql.golden.json @@ -196,30 +196,30 @@ "LeftParenPos": 133, "RightParenPos": 154, "Items": { - "ListPos": 135, - "ListEnd": 153, + "ListPos": 134, + "ListEnd": 154, "HasDistinct": false, "Items": [ { "Expr": { - "LiteralPos": 135, - "LiteralEnd": 138, + "LiteralPos": 134, + "LiteralEnd": 139, "Literal": "foo" }, "Alias": null }, { "Expr": { - "LiteralPos": 142, - "LiteralEnd": 145, + "LiteralPos": 141, + "LiteralEnd": 146, "Literal": "bar" }, "Alias": null }, { "Expr": { - "LiteralPos": 149, - "LiteralEnd": 153, + "LiteralPos": 148, + "LiteralEnd": 154, "Literal": "test" }, "Alias": null @@ -243,7 +243,7 @@ "RightParenPos": 176, "Items": { "ListPos": 162, - "ListEnd": 175, + "ListEnd": 176, "HasDistinct": false, "Items": [ { @@ -256,8 +256,8 @@ }, "Operation": "=", "RightExpr": { - "LiteralPos": 168, - "LiteralEnd": 175, + "LiteralPos": 167, + "LiteralEnd": 176, "Literal": "testing" }, "HasGlobal": false, @@ -278,7 +278,7 @@ "RightParenPos": 205, "Items": { "ListPos": 183, - "ListEnd": 204, + "ListEnd": 205, "HasDistinct": false, "Items": [ { @@ -291,8 +291,8 @@ }, "Operation": "NOT LIKE", "RightExpr": { - "LiteralPos": 196, - "LiteralEnd": 204, + "LiteralPos": 195, + "LiteralEnd": 205, "Literal": "testing2" }, "HasGlobal": false, @@ -320,30 +320,30 @@ "LeftParenPos": 221, "RightParenPos": 235, "Items": { - "ListPos": 223, - "ListEnd": 234, + "ListPos": 222, + "ListEnd": 235, "HasDistinct": false, "Items": [ { "Expr": { - "LiteralPos": 223, - "LiteralEnd": 224, + "LiteralPos": 222, + "LiteralEnd": 225, "Literal": "a" }, "Alias": null }, { "Expr": { - "LiteralPos": 228, - "LiteralEnd": 229, + "LiteralPos": 227, + "LiteralEnd": 230, "Literal": "b" }, "Alias": null }, { "Expr": { - "LiteralPos": 233, - "LiteralEnd": 234, + "LiteralPos": 232, + "LiteralEnd": 235, "Literal": "c" }, "Alias": null diff --git a/parser/testdata/query/output/select_simple_with_cte_with_column_aliases.sql.golden.json b/parser/testdata/query/output/select_simple_with_cte_with_column_aliases.sql.golden.json index 734c7ea7..11889933 100644 --- a/parser/testdata/query/output/select_simple_with_cte_with_column_aliases.sql.golden.json +++ b/parser/testdata/query/output/select_simple_with_cte_with_column_aliases.sql.golden.json @@ -4,7 +4,7 @@ "StatementEnd": 133, "With": { "WithPos": 0, - "EndPos": 24, + "EndPos": 25, "CTEs": [ { "CTEPos": 9, diff --git a/parser/testdata/query/output/select_simple_with_is_not_null.sql.golden.json b/parser/testdata/query/output/select_simple_with_is_not_null.sql.golden.json index 80a59d68..5d7e2cc4 100644 --- a/parser/testdata/query/output/select_simple_with_is_not_null.sql.golden.json +++ b/parser/testdata/query/output/select_simple_with_is_not_null.sql.golden.json @@ -109,30 +109,30 @@ "LeftParenPos": 61, "RightParenPos": 82, "Items": { - "ListPos": 63, - "ListEnd": 81, + "ListPos": 62, + "ListEnd": 82, "HasDistinct": false, "Items": [ { "Expr": { - "LiteralPos": 63, - "LiteralEnd": 66, + "LiteralPos": 62, + "LiteralEnd": 67, "Literal": "foo" }, "Alias": null }, { "Expr": { - "LiteralPos": 70, - "LiteralEnd": 73, + "LiteralPos": 69, + "LiteralEnd": 74, "Literal": "bar" }, "Alias": null }, { "Expr": { - "LiteralPos": 77, - "LiteralEnd": 81, + "LiteralPos": 76, + "LiteralEnd": 82, "Literal": "test" }, "Alias": null @@ -156,7 +156,7 @@ "RightParenPos": 106, "Items": { "ListPos": 92, - "ListEnd": 105, + "ListEnd": 106, "HasDistinct": false, "Items": [ { @@ -169,8 +169,8 @@ }, "Operation": "=", "RightExpr": { - "LiteralPos": 98, - "LiteralEnd": 105, + "LiteralPos": 97, + "LiteralEnd": 106, "Literal": "testing" }, "HasGlobal": false, diff --git a/parser/testdata/query/output/select_simple_with_is_null.sql.golden.json b/parser/testdata/query/output/select_simple_with_is_null.sql.golden.json index 8dee31f6..9b53fe7f 100644 --- a/parser/testdata/query/output/select_simple_with_is_null.sql.golden.json +++ b/parser/testdata/query/output/select_simple_with_is_null.sql.golden.json @@ -108,30 +108,30 @@ "LeftParenPos": 61, "RightParenPos": 82, "Items": { - "ListPos": 63, - "ListEnd": 81, + "ListPos": 62, + "ListEnd": 82, "HasDistinct": false, "Items": [ { "Expr": { - "LiteralPos": 63, - "LiteralEnd": 66, + "LiteralPos": 62, + "LiteralEnd": 67, "Literal": "foo" }, "Alias": null }, { "Expr": { - "LiteralPos": 70, - "LiteralEnd": 73, + "LiteralPos": 69, + "LiteralEnd": 74, "Literal": "bar" }, "Alias": null }, { "Expr": { - "LiteralPos": 77, - "LiteralEnd": 81, + "LiteralPos": 76, + "LiteralEnd": 82, "Literal": "test" }, "Alias": null @@ -155,7 +155,7 @@ "RightParenPos": 104, "Items": { "ListPos": 90, - "ListEnd": 103, + "ListEnd": 104, "HasDistinct": false, "Items": [ { @@ -168,8 +168,8 @@ }, "Operation": "=", "RightExpr": { - "LiteralPos": 96, - "LiteralEnd": 103, + "LiteralPos": 95, + "LiteralEnd": 104, "Literal": "testing" }, "HasGlobal": false, diff --git a/parser/testdata/query/output/select_table_function_arg_exprs.sql.golden.json b/parser/testdata/query/output/select_table_function_arg_exprs.sql.golden.json index e27babc8..eb8d0585 100644 --- a/parser/testdata/query/output/select_table_function_arg_exprs.sql.golden.json +++ b/parser/testdata/query/output/select_table_function_arg_exprs.sql.golden.json @@ -12,7 +12,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 7, - "NameEnd": 7 + "NameEnd": 8 }, "Modifiers": [], "Alias": null @@ -92,7 +92,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 37, - "NameEnd": 37 + "NameEnd": 38 }, "Modifiers": [], "Alias": null @@ -192,7 +192,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 78, - "NameEnd": 78 + "NameEnd": 79 }, "Modifiers": [], "Alias": null @@ -292,7 +292,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 121, - "NameEnd": 121 + "NameEnd": 122 }, "Modifiers": [], "Alias": null @@ -317,8 +317,8 @@ "RightParenPos": 155, "Args": [ { - "LiteralPos": 137, - "LiteralEnd": 138, + "LiteralPos": 136, + "LiteralEnd": 139, "Literal": "c" }, { @@ -391,7 +391,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 165, - "NameEnd": 165 + "NameEnd": 166 }, "Modifiers": [], "Alias": null @@ -471,7 +471,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 197, - "NameEnd": 197 + "NameEnd": 198 }, "Modifiers": [], "Alias": null @@ -540,7 +540,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 225, - "NameEnd": 225 + "NameEnd": 226 }, "Modifiers": [], "Alias": null @@ -616,7 +616,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 255, - "NameEnd": 255 + "NameEnd": 256 }, "Modifiers": [], "Alias": null @@ -711,7 +711,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 287, - "NameEnd": 287 + "NameEnd": 288 }, "Modifiers": [], "Alias": null @@ -817,7 +817,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 323, - "NameEnd": 323 + "NameEnd": 324 }, "Modifiers": [], "Alias": null @@ -901,7 +901,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 351, - "NameEnd": 351 + "NameEnd": 352 }, "Modifiers": [], "Alias": null @@ -926,8 +926,8 @@ "RightParenPos": 388, "Args": [ { - "LiteralPos": 366, - "LiteralEnd": 375, + "LiteralPos": 365, + "LiteralEnd": 376, "Literal": "127.0.0.1" }, { @@ -1008,7 +1008,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 398, - "NameEnd": 398 + "NameEnd": 399 }, "Modifiers": [], "Alias": null @@ -1101,7 +1101,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 444, - "NameEnd": 444 + "NameEnd": 445 }, "Modifiers": [], "Alias": null @@ -1128,15 +1128,15 @@ { "CastPos": 459, "Expr": { - "LiteralPos": 465, - "LiteralEnd": 467, + "LiteralPos": 464, + "LiteralEnd": 468, "Literal": "10" }, "Separator": ",", "AsPos": 468, "AsType": { - "LiteralPos": 471, - "LiteralEnd": 477, + "LiteralPos": 470, + "LiteralEnd": 478, "Literal": "UInt64" } } @@ -1179,7 +1179,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 489, - "NameEnd": 489 + "NameEnd": 490 }, "Modifiers": [], "Alias": null @@ -1204,8 +1204,8 @@ "RightParenPos": 535, "Args": [ { - "LiteralPos": 505, - "LiteralEnd": 506, + "LiteralPos": 504, + "LiteralEnd": 507, "Literal": "c" }, { diff --git a/parser/testdata/query/output/select_when_condition.sql.golden.json b/parser/testdata/query/output/select_when_condition.sql.golden.json index f46cc162..c248caf5 100644 --- a/parser/testdata/query/output/select_when_condition.sql.golden.json +++ b/parser/testdata/query/output/select_when_condition.sql.golden.json @@ -23,8 +23,8 @@ "NameEnd": 22 }, "Then": { - "LiteralPos": 29, - "LiteralEnd": 34, + "LiteralPos": 28, + "LiteralEnd": 35, "Literal": "hello" }, "ElsePos": 0, @@ -33,8 +33,8 @@ ], "ElsePos": 36, "Else": { - "LiteralPos": 42, - "LiteralEnd": 47, + "LiteralPos": 41, + "LiteralEnd": 48, "Literal": "world" } }, diff --git a/parser/testdata/query/output/select_window_comprehensive.sql.golden.json b/parser/testdata/query/output/select_window_comprehensive.sql.golden.json index a561a1e3..b6d48053 100644 --- a/parser/testdata/query/output/select_window_comprehensive.sql.golden.json +++ b/parser/testdata/query/output/select_window_comprehensive.sql.golden.json @@ -1506,7 +1506,7 @@ "RightParenPos": 3293, "Items": { "ListPos": 3292, - "ListEnd": 3292, + "ListEnd": 3293, "HasDistinct": false, "Items": [ { @@ -1514,7 +1514,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 3292, - "NameEnd": 3292 + "NameEnd": 3293 }, "Alias": null } @@ -1770,7 +1770,7 @@ "PartitionPos": 3629, "Expr": { "ListPos": 3643, - "ListEnd": 3670, + "ListEnd": 3671, "HasDistinct": false, "Items": [ { @@ -1785,14 +1785,14 @@ "LeftParenPos": 3653, "RightParenPos": 3670, "Items": { - "ListPos": 3655, + "ListPos": 3654, "ListEnd": 3670, "HasDistinct": false, "Items": [ { "Expr": { - "LiteralPos": 3655, - "LiteralEnd": 3658, + "LiteralPos": 3654, + "LiteralEnd": 3659, "Literal": "day" }, "Alias": null diff --git a/parser/testdata/query/output/select_window_params.sql.golden.json b/parser/testdata/query/output/select_window_params.sql.golden.json index 991c7fc5..ae0532db 100644 --- a/parser/testdata/query/output/select_window_params.sql.golden.json +++ b/parser/testdata/query/output/select_window_params.sql.golden.json @@ -1,7 +1,7 @@ [ { "SelectPos": 100, - "StatementEnd": 663, + "StatementEnd": 664, "With": null, "Top": null, "HasDistinct": false, @@ -223,7 +223,7 @@ "RightParenPos": 358, "Items": { "ListPos": 357, - "ListEnd": 357, + "ListEnd": 358, "HasDistinct": false, "Items": [ { @@ -231,7 +231,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 357, - "NameEnd": 357 + "NameEnd": 358 }, "Alias": null } diff --git a/parser/testdata/query/output/select_with_global_join_locality.sql.golden.json b/parser/testdata/query/output/select_with_global_join_locality.sql.golden.json index 35133ad7..9d5d6e89 100644 --- a/parser/testdata/query/output/select_with_global_join_locality.sql.golden.json +++ b/parser/testdata/query/output/select_with_global_join_locality.sql.golden.json @@ -12,7 +12,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 7, - "NameEnd": 7 + "NameEnd": 8 }, "Modifiers": [], "Alias": null @@ -153,7 +153,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 55, - "NameEnd": 55 + "NameEnd": 56 }, "Modifiers": [], "Alias": null @@ -295,7 +295,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 109, - "NameEnd": 109 + "NameEnd": 110 }, "Modifiers": [], "Alias": null @@ -437,7 +437,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 162, - "NameEnd": 162 + "NameEnd": 163 }, "Modifiers": [], "Alias": null @@ -549,7 +549,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 216, - "NameEnd": 216 + "NameEnd": 217 }, "Modifiers": [], "Alias": null @@ -692,7 +692,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 273, - "NameEnd": 273 + "NameEnd": 274 }, "Modifiers": [], "Alias": null @@ -785,7 +785,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 312, - "NameEnd": 312 + "NameEnd": 313 }, "Modifiers": [], "Alias": null @@ -936,7 +936,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 368, - "NameEnd": 368 + "NameEnd": 369 }, "Modifiers": [], "Alias": null @@ -1056,7 +1056,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 419, - "NameEnd": 419 + "NameEnd": 420 }, "Modifiers": [], "Alias": null @@ -1276,7 +1276,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 507, - "NameEnd": 507 + "NameEnd": 508 }, "Modifiers": [], "Alias": null @@ -1408,7 +1408,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 561, - "NameEnd": 561 + "NameEnd": 562 }, "Modifiers": [], "Alias": null @@ -1540,7 +1540,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 619, - "NameEnd": 619 + "NameEnd": 620 }, "Modifiers": [], "Alias": null @@ -1766,7 +1766,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 716, - "NameEnd": 716 + "NameEnd": 717 }, "Modifiers": [], "Alias": null @@ -2108,7 +2108,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 884, - "NameEnd": 884 + "NameEnd": 885 }, "Modifiers": [], "Alias": null @@ -2445,7 +2445,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 1064, - "NameEnd": 1064 + "NameEnd": 1065 }, "Modifiers": [], "Alias": null diff --git a/parser/testdata/query/output/select_with_join_only.sql.golden.json b/parser/testdata/query/output/select_with_join_only.sql.golden.json index 5ad42c73..a5cc73e7 100644 --- a/parser/testdata/query/output/select_with_join_only.sql.golden.json +++ b/parser/testdata/query/output/select_with_join_only.sql.golden.json @@ -12,7 +12,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 7, - "NameEnd": 7 + "NameEnd": 8 }, "Modifiers": [], "Alias": null diff --git a/parser/testdata/query/output/select_with_keyword_in_group_by.sql.golden.json b/parser/testdata/query/output/select_with_keyword_in_group_by.sql.golden.json index 9d15658e..10463771 100644 --- a/parser/testdata/query/output/select_with_keyword_in_group_by.sql.golden.json +++ b/parser/testdata/query/output/select_with_keyword_in_group_by.sql.golden.json @@ -20,7 +20,7 @@ "RightParenPos": 59, "Items": { "ListPos": 29, - "ListEnd": 58, + "ListEnd": 59, "HasDistinct": false, "Items": [ { diff --git a/parser/testdata/query/output/select_with_keyword_placeholder.sql.golden.json b/parser/testdata/query/output/select_with_keyword_placeholder.sql.golden.json index a4ce8831..9dc73b4e 100644 --- a/parser/testdata/query/output/select_with_keyword_placeholder.sql.golden.json +++ b/parser/testdata/query/output/select_with_keyword_placeholder.sql.golden.json @@ -1,7 +1,7 @@ [ { "SelectPos": 0, - "StatementEnd": 20, + "StatementEnd": 21, "With": null, "Top": null, "HasDistinct": false, @@ -49,7 +49,7 @@ }, { "SelectPos": 23, - "StatementEnd": 53, + "StatementEnd": 54, "With": null, "Top": null, "HasDistinct": false, @@ -68,7 +68,7 @@ "RightParenPos": 53, "Items": { "ListPos": 39, - "ListEnd": 52, + "ListEnd": 53, "HasDistinct": false, "Items": [ { diff --git a/parser/testdata/query/output/select_with_left_join.sql.golden.json b/parser/testdata/query/output/select_with_left_join.sql.golden.json index 20e50cfb..99e15f5a 100644 --- a/parser/testdata/query/output/select_with_left_join.sql.golden.json +++ b/parser/testdata/query/output/select_with_left_join.sql.golden.json @@ -117,7 +117,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 112, - "NameEnd": 112 + "NameEnd": 113 }, "Modifiers": [], "Alias": null diff --git a/parser/testdata/query/output/select_with_multi_array_and_inner_join.sql.golden.json b/parser/testdata/query/output/select_with_multi_array_and_inner_join.sql.golden.json index 35a91d8f..5cf9f022 100644 --- a/parser/testdata/query/output/select_with_multi_array_and_inner_join.sql.golden.json +++ b/parser/testdata/query/output/select_with_multi_array_and_inner_join.sql.golden.json @@ -1,7 +1,7 @@ [ { "SelectPos": 0, - "StatementEnd": 313, + "StatementEnd": 314, "With": null, "Top": null, "HasDistinct": false, @@ -20,7 +20,7 @@ "RightParenPos": 46, "Items": { "ListPos": 29, - "ListEnd": 45, + "ListEnd": 46, "HasDistinct": false, "Items": [ { @@ -44,8 +44,8 @@ }, { "Expr": { - "LiteralPos": 40, - "LiteralEnd": 45, + "LiteralPos": 39, + "LiteralEnd": 46, "Literal": "value" }, "Alias": null @@ -108,7 +108,7 @@ "RightParenPos": 116, "Items": { "ListPos": 100, - "ListEnd": 115, + "ListEnd": 116, "HasDistinct": false, "Items": [ { @@ -132,8 +132,8 @@ }, { "Expr": { - "LiteralPos": 111, - "LiteralEnd": 115, + "LiteralPos": 110, + "LiteralEnd": 116, "Literal": "arr1" }, "Alias": null @@ -194,7 +194,7 @@ "RightParenPos": 232, "Items": { "ListPos": 216, - "ListEnd": 231, + "ListEnd": 232, "HasDistinct": false, "Items": [ { @@ -218,8 +218,8 @@ }, { "Expr": { - "LiteralPos": 227, - "LiteralEnd": 231, + "LiteralPos": 226, + "LiteralEnd": 232, "Literal": "arr2" }, "Alias": null @@ -269,7 +269,7 @@ "OnPos": 258, "On": { "ListPos": 261, - "ListEnd": 295, + "ListEnd": 296, "HasDistinct": false, "Items": [ { @@ -303,7 +303,7 @@ "RightParenPos": 295, "Items": { "ListPos": 287, - "ListEnd": 294, + "ListEnd": 295, "HasDistinct": false, "Items": [ { @@ -317,8 +317,8 @@ }, { "Expr": { - "LiteralPos": 292, - "LiteralEnd": 294, + "LiteralPos": 291, + "LiteralEnd": 295, "Literal": "id" }, "Alias": null @@ -351,7 +351,7 @@ "OnPos": 142, "On": { "ListPos": 145, - "ListEnd": 179, + "ListEnd": 180, "HasDistinct": false, "Items": [ { @@ -385,7 +385,7 @@ "RightParenPos": 179, "Items": { "ListPos": 171, - "ListEnd": 178, + "ListEnd": 179, "HasDistinct": false, "Items": [ { @@ -399,8 +399,8 @@ }, { "Expr": { - "LiteralPos": 176, - "LiteralEnd": 178, + "LiteralPos": 175, + "LiteralEnd": 179, "Literal": "id" }, "Alias": null @@ -442,8 +442,8 @@ }, "Operation": "!=", "RightExpr": { - "LiteralPos": 313, - "LiteralEnd": 313, + "LiteralPos": 312, + "LiteralEnd": 314, "Literal": "" }, "HasGlobal": false, diff --git a/parser/testdata/query/output/select_with_multi_array_join.sql.golden.json b/parser/testdata/query/output/select_with_multi_array_join.sql.golden.json index 9fbe5ff8..46e5495e 100644 --- a/parser/testdata/query/output/select_with_multi_array_join.sql.golden.json +++ b/parser/testdata/query/output/select_with_multi_array_join.sql.golden.json @@ -118,7 +118,7 @@ "RightParenPos": 154, "Items": { "ListPos": 97, - "ListEnd": 152, + "ListEnd": 153, "HasDistinct": false, "Items": [ { @@ -134,7 +134,7 @@ "RightParenPos": 121, "Items": { "ListPos": 115, - "ListEnd": 120, + "ListEnd": 121, "HasDistinct": false, "Items": [ { @@ -148,8 +148,8 @@ }, { "Expr": { - "LiteralPos": 119, - "LiteralEnd": 120, + "LiteralPos": 118, + "LiteralEnd": 121, "Literal": "x" }, "Alias": null @@ -174,7 +174,7 @@ "RightParenPos": 152, "Items": { "ListPos": 146, - "ListEnd": 151, + "ListEnd": 152, "HasDistinct": false, "Items": [ { @@ -188,8 +188,8 @@ }, { "Expr": { - "LiteralPos": 150, - "LiteralEnd": 151, + "LiteralPos": 149, + "LiteralEnd": 152, "Literal": "y" }, "Alias": null diff --git a/parser/testdata/query/output/select_with_multi_except.sql.golden.json b/parser/testdata/query/output/select_with_multi_except.sql.golden.json index ccf1bce4..e1b4d332 100644 --- a/parser/testdata/query/output/select_with_multi_except.sql.golden.json +++ b/parser/testdata/query/output/select_with_multi_except.sql.golden.json @@ -1,7 +1,7 @@ [ { "SelectPos": 0, - "StatementEnd": 32, + "StatementEnd": 112, "With": null, "Top": null, "HasDistinct": false, @@ -73,7 +73,7 @@ "UnionDistinct": null, "Except": { "SelectPos": 41, - "StatementEnd": 72, + "StatementEnd": 112, "With": null, "Top": null, "HasDistinct": false, diff --git a/parser/testdata/query/output/select_with_multi_join.sql.golden.json b/parser/testdata/query/output/select_with_multi_join.sql.golden.json index 7420d587..73ad807e 100644 --- a/parser/testdata/query/output/select_with_multi_join.sql.golden.json +++ b/parser/testdata/query/output/select_with_multi_join.sql.golden.json @@ -24,8 +24,8 @@ "SelectItems": [ { "Expr": { - "LiteralPos": 25, - "LiteralEnd": 31, + "LiteralPos": 24, + "LiteralEnd": 32, "Literal": "value1" }, "Modifiers": [], @@ -73,8 +73,8 @@ "SelectItems": [ { "Expr": { - "LiteralPos": 65, - "LiteralEnd": 71, + "LiteralPos": 64, + "LiteralEnd": 72, "Literal": "value2" }, "Modifiers": [], @@ -122,8 +122,8 @@ "SelectItems": [ { "Expr": { - "LiteralPos": 105, - "LiteralEnd": 111, + "LiteralPos": 104, + "LiteralEnd": 112, "Literal": "value3" }, "Modifiers": [], diff --git a/parser/testdata/query/output/select_with_multi_line_comment.sql.golden.json b/parser/testdata/query/output/select_with_multi_line_comment.sql.golden.json index 81c7552b..010f3561 100644 --- a/parser/testdata/query/output/select_with_multi_line_comment.sql.golden.json +++ b/parser/testdata/query/output/select_with_multi_line_comment.sql.golden.json @@ -12,7 +12,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 48, - "NameEnd": 48 + "NameEnd": 49 }, "Modifiers": [], "Alias": null diff --git a/parser/testdata/query/output/select_with_multi_union.sql.golden.json b/parser/testdata/query/output/select_with_multi_union.sql.golden.json index eb1c0598..a365bf06 100644 --- a/parser/testdata/query/output/select_with_multi_union.sql.golden.json +++ b/parser/testdata/query/output/select_with_multi_union.sql.golden.json @@ -1,7 +1,7 @@ [ { "SelectPos": 0, - "StatementEnd": 14, + "StatementEnd": 64, "With": null, "Top": null, "HasDistinct": false, @@ -37,7 +37,7 @@ "Format": null, "UnionAll": { "SelectPos": 25, - "StatementEnd": 39, + "StatementEnd": 64, "With": null, "Top": null, "HasDistinct": false, diff --git a/parser/testdata/query/output/select_with_multi_union_distinct.sql.golden.json b/parser/testdata/query/output/select_with_multi_union_distinct.sql.golden.json index 9a9b9a30..f9a84d7c 100644 --- a/parser/testdata/query/output/select_with_multi_union_distinct.sql.golden.json +++ b/parser/testdata/query/output/select_with_multi_union_distinct.sql.golden.json @@ -1,7 +1,7 @@ [ { "SelectPos": 0, - "StatementEnd": 14, + "StatementEnd": 74, "With": null, "Top": null, "HasDistinct": false, @@ -38,7 +38,7 @@ "UnionAll": null, "UnionDistinct": { "SelectPos": 30, - "StatementEnd": 44, + "StatementEnd": 74, "With": null, "Top": null, "HasDistinct": false, diff --git a/parser/testdata/query/output/select_with_parenthesized_union.sql.golden.json b/parser/testdata/query/output/select_with_parenthesized_union.sql.golden.json index c86e6477..d23cf338 100644 --- a/parser/testdata/query/output/select_with_parenthesized_union.sql.golden.json +++ b/parser/testdata/query/output/select_with_parenthesized_union.sql.golden.json @@ -1,7 +1,7 @@ [ { "SelectPos": 0, - "StatementEnd": 30, + "StatementEnd": 56, "With": null, "Top": null, "HasDistinct": false, @@ -23,13 +23,13 @@ "Expr": { "Table": { "TablePos": 14, - "TableEnd": 30, + "TableEnd": 56, "Alias": null, "Expr": { "HasParen": true, "Select": { "SelectPos": 15, - "StatementEnd": 30, + "StatementEnd": 56, "InnerQuery": { "SelectPos": 16, "StatementEnd": 29, @@ -161,7 +161,7 @@ }, "HasFinal": false }, - "StatementEnd": 30, + "StatementEnd": 56, "SampleRatio": null, "HasFinal": false } @@ -184,7 +184,7 @@ }, { "SelectPos": 59, - "StatementEnd": 89, + "StatementEnd": 118, "With": null, "Top": null, "HasDistinct": false, @@ -206,13 +206,13 @@ "Expr": { "Table": { "TablePos": 73, - "TableEnd": 89, + "TableEnd": 118, "Alias": null, "Expr": { "HasParen": true, "Select": { "SelectPos": 74, - "StatementEnd": 89, + "StatementEnd": 118, "InnerQuery": { "SelectPos": 75, "StatementEnd": 88, @@ -319,7 +319,7 @@ }, "HasFinal": false }, - "StatementEnd": 89, + "StatementEnd": 118, "SampleRatio": null, "HasFinal": false } @@ -342,7 +342,7 @@ }, { "SelectPos": 121, - "StatementEnd": 151, + "StatementEnd": 174, "With": null, "Top": null, "HasDistinct": false, @@ -364,13 +364,13 @@ "Expr": { "Table": { "TablePos": 135, - "TableEnd": 151, + "TableEnd": 174, "Alias": null, "Expr": { "HasParen": true, "Select": { "SelectPos": 136, - "StatementEnd": 151, + "StatementEnd": 174, "InnerQuery": { "SelectPos": 137, "StatementEnd": 150, @@ -502,7 +502,7 @@ }, "HasFinal": false }, - "StatementEnd": 151, + "StatementEnd": 174, "SampleRatio": null, "HasFinal": false } @@ -525,7 +525,7 @@ }, { "SelectPos": 177, - "StatementEnd": 207, + "StatementEnd": 233, "With": null, "Top": null, "HasDistinct": false, @@ -547,13 +547,13 @@ "Expr": { "Table": { "TablePos": 191, - "TableEnd": 207, + "TableEnd": 233, "Alias": null, "Expr": { "HasParen": true, "Select": { "SelectPos": 192, - "StatementEnd": 207, + "StatementEnd": 233, "InnerQuery": { "SelectPos": 193, "StatementEnd": 206, @@ -685,7 +685,7 @@ }, "HasFinal": false }, - "StatementEnd": 207, + "StatementEnd": 233, "SampleRatio": null, "HasFinal": false } @@ -708,7 +708,7 @@ }, { "SelectPos": 236, - "StatementEnd": 251, + "StatementEnd": 275, "InnerQuery": { "SelectPos": 237, "StatementEnd": 250, @@ -814,10 +814,10 @@ }, { "SelectPos": 277, - "StatementEnd": 306, + "StatementEnd": 325, "InnerQuery": { "SelectPos": 278, - "StatementEnd": 286, + "StatementEnd": 305, "With": null, "Top": null, "HasDistinct": false, @@ -945,7 +945,7 @@ }, { "SelectPos": 327, - "StatementEnd": 335, + "StatementEnd": 375, "With": null, "Top": null, "HasDistinct": false, @@ -976,7 +976,7 @@ "Format": null, "UnionAll": { "SelectPos": 346, - "StatementEnd": 356, + "StatementEnd": 375, "InnerQuery": { "SelectPos": 347, "StatementEnd": 355, @@ -1219,10 +1219,10 @@ }, { "SelectPos": 412, - "StatementEnd": 441, + "StatementEnd": 460, "InnerQuery": { "SelectPos": 413, - "StatementEnd": 421, + "StatementEnd": 440, "With": null, "Top": null, "HasDistinct": false, @@ -1350,7 +1350,7 @@ }, { "SelectPos": 462, - "StatementEnd": 470, + "StatementEnd": 510, "With": null, "Top": null, "HasDistinct": false, @@ -1387,7 +1387,7 @@ "StatementEnd": 510, "InnerQuery": { "SelectPos": 482, - "StatementEnd": 490, + "StatementEnd": 509, "With": null, "Top": null, "HasDistinct": false, @@ -1565,7 +1565,7 @@ "StatementEnd": 618, "InnerQuery": { "SelectPos": 548, - "StatementEnd": 556, + "StatementEnd": 575, "With": null, "Top": null, "HasDistinct": false, diff --git a/parser/testdata/query/output/select_with_placeholder.sql.golden.json b/parser/testdata/query/output/select_with_placeholder.sql.golden.json index e631ab01..91e84f41 100644 --- a/parser/testdata/query/output/select_with_placeholder.sql.golden.json +++ b/parser/testdata/query/output/select_with_placeholder.sql.golden.json @@ -1,7 +1,7 @@ [ { "SelectPos": 0, - "StatementEnd": 28, + "StatementEnd": 29, "With": null, "Top": null, "HasDistinct": false, @@ -12,7 +12,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 7, - "NameEnd": 7 + "NameEnd": 8 }, "Modifiers": [], "Alias": null @@ -55,7 +55,7 @@ "Operation": "=", "RightExpr": { "PlaceholderPos": 28, - "PlaceHolderEnd": 28, + "PlaceHolderEnd": 29, "Type": "?" }, "HasGlobal": false, diff --git a/parser/testdata/query/output/select_with_query_parameter.sql.golden.json b/parser/testdata/query/output/select_with_query_parameter.sql.golden.json index 0af7c70f..acb5bd1c 100644 --- a/parser/testdata/query/output/select_with_query_parameter.sql.golden.json +++ b/parser/testdata/query/output/select_with_query_parameter.sql.golden.json @@ -27,7 +27,7 @@ "SetPos": 18, "Settings": { "SettingsPos": 22, - "ListEnd": 36, + "ListEnd": 37, "Items": [ { "SettingsPos": 22, @@ -38,8 +38,8 @@ "NameEnd": 29 }, "Expr": { - "LiteralPos": 33, - "LiteralEnd": 36, + "LiteralPos": 32, + "LiteralEnd": 37, "Literal": "str" } } @@ -50,7 +50,7 @@ "SetPos": 39, "Settings": { "SettingsPos": 43, - "ListEnd": 73, + "ListEnd": 74, "Items": [ { "SettingsPos": 43, @@ -61,8 +61,8 @@ "NameEnd": 50 }, "Expr": { - "LiteralPos": 54, - "LiteralEnd": 73, + "LiteralPos": 53, + "LiteralEnd": 74, "Literal": "2022-08-04 18:30:53" } } @@ -89,8 +89,8 @@ "KeyValues": [ { "Key": { - "LiteralPos": 92, - "LiteralEnd": 94, + "LiteralPos": 91, + "LiteralEnd": 95, "Literal": "10" }, "Value": { @@ -125,8 +125,8 @@ }, { "Key": { - "LiteralPos": 108, - "LiteralEnd": 110, + "LiteralPos": 107, + "LiteralEnd": 111, "Literal": "13" }, "Value": { @@ -167,7 +167,7 @@ }, { "SelectPos": 125, - "StatementEnd": 218, + "StatementEnd": 219, "With": null, "Top": null, "HasDistinct": false, @@ -313,7 +313,7 @@ }, { "SelectPos": 222, - "StatementEnd": 283, + "StatementEnd": 284, "With": null, "Top": null, "HasDistinct": false, @@ -324,7 +324,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 229, - "NameEnd": 229 + "NameEnd": 230 }, "Modifiers": [], "Alias": null diff --git a/parser/testdata/query/output/select_with_settings_additional_table_filters.sql.golden.json b/parser/testdata/query/output/select_with_settings_additional_table_filters.sql.golden.json index 30daa4fa..28206e92 100644 --- a/parser/testdata/query/output/select_with_settings_additional_table_filters.sql.golden.json +++ b/parser/testdata/query/output/select_with_settings_additional_table_filters.sql.golden.json @@ -12,7 +12,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 7, - "NameEnd": 7 + "NameEnd": 8 }, "Modifiers": [], "Alias": null @@ -68,13 +68,13 @@ "KeyValues": [ { "Key": { - "LiteralPos": 61, - "LiteralEnd": 71, + "LiteralPos": 60, + "LiteralEnd": 72, "Literal": "test_table" }, "Value": { - "LiteralPos": 75, - "LiteralEnd": 85, + "LiteralPos": 74, + "LiteralEnd": 86, "Literal": "status = 1" } } @@ -102,7 +102,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 97, - "NameEnd": 97 + "NameEnd": 98 }, "Modifiers": [], "Alias": null @@ -158,13 +158,13 @@ "KeyValues": [ { "Key": { - "LiteralPos": 151, - "LiteralEnd": 161, + "LiteralPos": 150, + "LiteralEnd": 162, "Literal": "test_table" }, "Value": { - "LiteralPos": 165, - "LiteralEnd": 181, + "LiteralPos": 164, + "LiteralEnd": 182, "Literal": "value = \\'test\\'" } } @@ -192,7 +192,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 193, - "NameEnd": 193 + "NameEnd": 194 }, "Modifiers": [], "Alias": null @@ -248,13 +248,13 @@ "KeyValues": [ { "Key": { - "LiteralPos": 247, - "LiteralEnd": 257, + "LiteralPos": 246, + "LiteralEnd": 258, "Literal": "test_table" }, "Value": { - "LiteralPos": 261, - "LiteralEnd": 277, + "LiteralPos": 260, + "LiteralEnd": 278, "Literal": "value = ''test''" } } @@ -282,7 +282,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 289, - "NameEnd": 289 + "NameEnd": 290 }, "Modifiers": [], "Alias": null @@ -338,13 +338,13 @@ "KeyValues": [ { "Key": { - "LiteralPos": 343, - "LiteralEnd": 353, + "LiteralPos": 342, + "LiteralEnd": 354, "Literal": "test_table" }, "Value": { - "LiteralPos": 357, - "LiteralEnd": 401, + "LiteralPos": 356, + "LiteralEnd": 402, "Literal": "id IN (\\'a\\', \\'b\\') AND status = \\'active\\'" } } @@ -686,25 +686,25 @@ "KeyValues": [ { "Key": { - "LiteralPos": 586, - "LiteralEnd": 600, + "LiteralPos": 585, + "LiteralEnd": 601, "Literal": "system.numbers" }, "Value": { - "LiteralPos": 603, - "LiteralEnd": 614, + "LiteralPos": 602, + "LiteralEnd": 615, "Literal": "number != 3" } }, { "Key": { - "LiteralPos": 618, - "LiteralEnd": 625, + "LiteralPos": 617, + "LiteralEnd": 626, "Literal": "table_1" }, "Value": { - "LiteralPos": 628, - "LiteralEnd": 634, + "LiteralPos": 627, + "LiteralEnd": 635, "Literal": "x != 2" } } diff --git a/parser/testdata/query/output/select_with_single_quote_table.sql.golden.json b/parser/testdata/query/output/select_with_single_quote_table.sql.golden.json index eb145c52..30ca5aa5 100644 --- a/parser/testdata/query/output/select_with_single_quote_table.sql.golden.json +++ b/parser/testdata/query/output/select_with_single_quote_table.sql.golden.json @@ -1,7 +1,7 @@ [ { "SelectPos": 0, - "StatementEnd": 25, + "StatementEnd": 26, "With": null, "Top": null, "HasDistinct": false, @@ -12,7 +12,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 7, - "NameEnd": 7 + "NameEnd": 8 }, "Modifiers": [], "Alias": null @@ -22,21 +22,21 @@ "FromPos": 9, "Expr": { "Table": { - "TablePos": 15, - "TableEnd": 25, + "TablePos": 14, + "TableEnd": 26, "Alias": null, "Expr": { "Database": null, "Table": { "Name": "test_table", "QuoteType": 4, - "NamePos": 15, - "NameEnd": 25 + "NamePos": 14, + "NameEnd": 26 } }, "HasFinal": false }, - "StatementEnd": 25, + "StatementEnd": 26, "SampleRatio": null, "HasFinal": false } diff --git a/parser/testdata/query/output/select_with_string_expr.sql.golden.json b/parser/testdata/query/output/select_with_string_expr.sql.golden.json index 125e816e..c9b36047 100644 --- a/parser/testdata/query/output/select_with_string_expr.sql.golden.json +++ b/parser/testdata/query/output/select_with_string_expr.sql.golden.json @@ -67,7 +67,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 37, - "NameEnd": 37 + "NameEnd": 38 }, "Modifiers": [], "Alias": null diff --git a/parser/testdata/query/output/select_with_union_distinct.sql.golden.json b/parser/testdata/query/output/select_with_union_distinct.sql.golden.json index 6287aa1d..01fbabb9 100644 --- a/parser/testdata/query/output/select_with_union_distinct.sql.golden.json +++ b/parser/testdata/query/output/select_with_union_distinct.sql.golden.json @@ -1,7 +1,7 @@ [ { "SelectPos": 0, - "StatementEnd": 43, + "StatementEnd": 121, "With": null, "Top": null, "HasDistinct": false, diff --git a/parser/testdata/query/output/select_with_variable.sql.golden.json b/parser/testdata/query/output/select_with_variable.sql.golden.json index 7a75e6f9..7daeabcd 100644 --- a/parser/testdata/query/output/select_with_variable.sql.golden.json +++ b/parser/testdata/query/output/select_with_variable.sql.golden.json @@ -67,7 +67,7 @@ "Name": "*", "QuoteType": 0, "NamePos": 36, - "NameEnd": 36 + "NameEnd": 37 }, "Modifiers": [], "Alias": null