Skip to content

Commit 0c87106

Browse files
authored
Fix panic while the query with order by Timestamp keyword (#88)
1 parent f6b95a0 commit 0c87106

File tree

4 files changed

+86
-1
lines changed

4 files changed

+86
-1
lines changed

parser/parser_column.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -334,7 +334,7 @@ func (p *Parser) parseColumnExpr(pos Pos) (Expr, error) { //nolint:funlen
334334
if err != nil {
335335
return nil, err
336336
}
337-
if nextToken.Kind == TokenString {
337+
if nextToken != nil && nextToken.Kind == TokenString {
338338
return p.parseString(pos)
339339
}
340340
return p.parseIdentOrFunction(pos)
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
-- Origin SQL:
2+
SELECT Timestamp FROM events ORDER BY Timestamp;
3+
4+
-- Format SQL:
5+
6+
SELECT
7+
Timestamp
8+
FROM
9+
events
10+
ORDER BY Timestamp;
Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
[
2+
{
3+
"SelectPos": 0,
4+
"StatementEnd": 47,
5+
"With": null,
6+
"Top": null,
7+
"SelectColumns": {
8+
"ListPos": 7,
9+
"ListEnd": 16,
10+
"HasDistinct": false,
11+
"Items": [
12+
{
13+
"Name": "Timestamp",
14+
"QuoteType": 1,
15+
"NamePos": 7,
16+
"NameEnd": 16
17+
}
18+
]
19+
},
20+
"From": {
21+
"FromPos": 17,
22+
"Expr": {
23+
"Table": {
24+
"TablePos": 22,
25+
"TableEnd": 28,
26+
"Alias": null,
27+
"Expr": {
28+
"Database": null,
29+
"Table": {
30+
"Name": "events",
31+
"QuoteType": 1,
32+
"NamePos": 22,
33+
"NameEnd": 28
34+
}
35+
},
36+
"HasFinal": false
37+
},
38+
"StatementEnd": 28,
39+
"SampleRatio": null,
40+
"HasFinal": false
41+
}
42+
},
43+
"ArrayJoin": null,
44+
"Window": null,
45+
"Prewhere": null,
46+
"Where": null,
47+
"GroupBy": null,
48+
"WithTotal": false,
49+
"Having": null,
50+
"OrderBy": {
51+
"OrderPos": 29,
52+
"ListEnd": 47,
53+
"Items": [
54+
{
55+
"OrderPos": 29,
56+
"Expr": {
57+
"Name": "Timestamp",
58+
"QuoteType": 1,
59+
"NamePos": 38,
60+
"NameEnd": 47
61+
},
62+
"Direction": "None"
63+
}
64+
]
65+
},
66+
"LimitBy": null,
67+
"Limit": null,
68+
"Settings": null,
69+
"Format": null,
70+
"UnionAll": null,
71+
"UnionDistinct": null,
72+
"Except": null
73+
}
74+
]
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
SELECT Timestamp FROM events ORDER BY Timestamp;

0 commit comments

Comments
 (0)