Я пытаюсь использовать presto-parser. Что мне нужно знать, как анализировать и извлекать тело запроса наших из созданного Statement
:Использование превью-анализатора Facebook
SqlParser SQL_PARSER = new SqlParser();
Statement statement = SQL_PARSER.createStatement(query);
Там не кажется каким-либо образом, чтобы получить, что от Statement
геттер/сеттеров. Я отлаживал объект Statement, и из представления отладки вижу значения, которые мне нужно получить.
См:
Мне нужно, чтобы получить выбрать из, где, группеПо, OrderBy и предельные значения, которые были извлечены из по SqlParser.
Как насчет заявления «UPDATE», гоп-анализатор, кажется, не поддерживает это? – xybrek
С беглым взглядом на кодовую базу, похоже, что она не поддерживается. Это возможно, потому что двигатель на самом деле не предназначен для этого, но я все равно был бы удивлен, если бы это было так, просто с точки зрения полноты. –
'UPDATE' не поддерживается в соответствии с [файлом определения ANTLR] (https://github.com/facebook/presto/blob/master/presto-parser/src/main/antlr4/com/facebook/presto/sql/ анализатор/SqlBase.g4). –