Package com.orientechnologies.orient.core.sql.parser
package com.orientechnologies.orient.core.sql.parser
-
ClassDescriptionThis class is used by the query planner to split projections in three parts: pre-aggregate projections aggregate projections post-aggregate projections An example:
select max(a + b) + (max(b + c * 2) + 1 + 2) * 3 as foo, max(d) + max(e), f from " + classNamewill becomea + b AS _$$$OALIAS$$_1, b + c * 2 AS _$$$OALIAS$$_3, d AS _$$$OALIAS$$_5, e AS _$$$OALIAS$$_7, f max(_$$$OALIAS$$_1) AS _$$$OALIAS$$_0, max(_$$$OALIAS$$_3) AS _$$$OALIAS$$_2, max(_$$$OALIAS$$_5) AS _$$$OALIAS$$_4, max(_$$$OALIAS$$_7) AS _$$$OALIAS$$_6, f _$$$OALIAS$$_0 + (_$$$OALIAS$$_2 + 1 + 2) * 3 AS `foo`, _$$$OALIAS$$_4 + _$$$OALIAS$$_6 AS `max(d) + max(e)`, fThis interface describes a character stream that maintains line and column number positions of the characters.An implementation of interface CharStream, where the stream is assumed to contain only ASCII characters (with java-like unicode escape processing).Created by luigidellaquila on 12/11/14.Created by luigidellaquila on 07/11/14.Created by luigidellaquila on 12/08/16.This class is an LRU cache for already prepared SQL execution plans.This class is used to represent all the indentifies in the SQL grammar, ie. class names, property names, index names, variables and so on so forth.Created by luigidellaquila on 19/02/15.Created by luigidellaquila on 18/02/15.Created by luigidellaquila on 05/12/16.Created by luigidellaquila on 06/02/15.Orient Database Sql grammar.Token literal values and constants.Token Manager.Created by luigidellaquila on 21/11/16.Superclass for SQL statements that are too simple to deserve an execution planner.Superclass for SQL statements that are too simple to deserve an execution planner.This class is an LRU cache for already parsed SQL statement executors.this class is only used by the query executor to store pre-calculated values and store them in a temporary AST.This exception is thrown when parse errors are encountered.Created by luigidellaquila on 28/07/15.This class is used by the query planner to extract subqueries and move them to LET clause
An example:
select from foo where name in (select name from bar)
will become
select from foo
let $$$SUBQUERY$$_0 = (select name from bar)
where name in $$$SUBQUERY$$_0Describes the input token stream.Token Manager Error.