A root level query that has nested queries (or refers to queries in an outer scope) will have SelectElements that are ExportedSelectElement, the 'actualSelectElement' points directly to the refered AST node, while 'target' refers to it indirectly (see target)
A root level query that has nested queries (or refers to queries in an outer scope) will have SelectElements that are ExportedSelectElement, the 'actualSelectElement' points directly to the refered AST node, while 'target' refers to it indirectly (see target)
Will throw a ClassCastException if this type is not a Enumeration#Value
Will throw a ClassCastException if this type is not a Enumeration#Value
Will throw a ClassCastException if this type is not a Enumeration#Value
Will throw a ClassCastException if this type is not a Enumeration#Value
Update, Insert, and Delete statements are always at the root of an AST, so they are never aliased, but then can have sub queries, ex.
Update, Insert, and Delete statements are always at the root of an AST, so they are never aliased, but then can have sub queries, ex.: update ... where x in (subquery). Name clashes are impossible since SelectElements of query are always aliased.
In the following select : select t.x from t t.x is a select element and t is it's origin Here q.z1 is a SelectElement who's origin is t select q.z1 from (select t.x as z1 from t) q
In the following select : select t.x from t t.x is a select element and t is it's origin Here q.z1 is a SelectElement who's origin is t select q.z1 from (select t.x as z1 from t) q
target points to the selectElement that this ExportSelectElement refers to, who can also be an ExportSelectElement, whose target will point to its inner select element, recursively, until it becomes equal to the 'end' target, the actualSelectElement In other words : exportSelectElement.
target points to the selectElement that this ExportSelectElement refers to, who can also be an ExportSelectElement, whose target will point to its inner select element, recursively, until it becomes equal to the 'end' target, the actualSelectElement In other words : exportSelectElement.target.target.,...,.target == exportSelectElement.actualSelectElement
strictly for logging purposes, i.
strictly for logging purposes, i.e. to display a more explicit AST
visitor's args are : -the visited node, -it's parent -it's depth
visitor's args are : -the visited node, -it's parent -it's depth
SelectElement that refer to a SelectElement of an inner or outer query