Skip to content

Cannot parse druid sql #1625

Open
Open
@shuitai

Description

@shuitai

Cannot parse druid sql: https://druid.apache.org/docs/latest/querying/sql.html

String sql = "SELECT count(machineId), FLOOR(__time TO HOUR) FROM xaxd_brokerloadindexv1 WHERE __time BETWEEN '2010-02-12 00:00:00' AND '2019-02-23 00:00:00' GROUP BY FLOOR(__time TO HOUR)"; Select select = (Select) CCJSqlParserUtil.parse(sql);

The sample SQL is:
SELECT count(machineId), FLOOR(__time TO HOUR) FROM xaxd_brokerloadindexv1 WHERE __time BETWEEN '2010-02-12 00:00:00' AND '2019-02-23 00:00:00' GROUP BY FLOOR(__time TO HOUR)

The exception is:
Exception in thread "main" net.sf.jsqlparser.JSQLParserException: net.sf.jsqlparser.parser.ParseException: Encountered unexpected token: "(" "("
at line 1, column 31.

Was expecting one of:

"&"
"::"
";"
"<<"
">>"
"COLLATE"
"CONNECT"
"EMIT"
"GROUP"
"HAVING"
"INTO"
"START"
"WINDOW"
"["
"^"
"|"
<EOF>

at net.sf.jsqlparser.parser.CCJSqlParserUtil.parseStatement(CCJSqlParserUtil.java:263)
at net.sf.jsqlparser.parser.CCJSqlParserUtil.parse(CCJSqlParserUtil.java:81)
at net.sf.jsqlparser.parser.CCJSqlParserUtil.parse(CCJSqlParserUtil.java:47)
at com.java.test.SqlParserTest.main(SqlParserTest.java:12)

Caused by: java.util.concurrent.ExecutionException: net.sf.jsqlparser.parser.ParseException: Encountered unexpected token: "(" "("
at line 1, column 31.

Was expecting one of:

"&"
"::"
";"
"<<"
">>"
"COLLATE"
"CONNECT"
"EMIT"
"GROUP"
"HAVING"
"INTO"
"START"
"WINDOW"
"["
"^"
"|"
<EOF>

at java.base/java.util.concurrent.FutureTask.report(FutureTask.java:122)
at java.base/java.util.concurrent.FutureTask.get(FutureTask.java:205)
at net.sf.jsqlparser.parser.CCJSqlParserUtil.parseStatement(CCJSqlParserUtil.java:258)
... 3 more

Caused by: net.sf.jsqlparser.parser.ParseException: Encountered unexpected token: "(" "("
at line 1, column 31.

Was expecting one of:

"&"
"::"
";"
"<<"
">>"
"COLLATE"
"CONNECT"
"EMIT"
"GROUP"
"HAVING"
"INTO"
"START"
"WINDOW"
"["
"^"
"|"
<EOF>

at net.sf.jsqlparser.parser.CCJSqlParser.generateParseException(CCJSqlParser.java:33398)
at net.sf.jsqlparser.parser.CCJSqlParser.jj_consume_token(CCJSqlParser.java:33231)
at net.sf.jsqlparser.parser.CCJSqlParser.Statement(CCJSqlParser.java:167)
at net.sf.jsqlparser.parser.CCJSqlParserUtil$1.call(CCJSqlParserUtil.java:253)
at net.sf.jsqlparser.parser.CCJSqlParserUtil$1.call(CCJSqlParserUtil.java:250)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.lang.Thread.run(Thread.java:829)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions