org.eclipse.datatools.modelbase.sql.query
Interface TableQueryLateral

All Superinterfaces:
org.eclipse.emf.ecore.EModelElement, org.eclipse.emf.ecore.ENamedElement, org.eclipse.emf.ecore.EObject, org.eclipse.emf.common.notify.Notifier, SQLObject, SQLQueryObject, TableExpression, TableReference

public interface TableQueryLateral
extends TableExpression

A representation of the model object 'Table Query Lateral'. A "lateral" table query is a query that appears in the FROM clause. However it is semantically different from a regular FROM clause query in that the lateral table query can itself contain references to other tables defined before (that is, to the left of it) in the same FROM clause. Regular FROM clause queries can only refer to tables defined at a higher level in the statement. In ISO SQL a lateral table query expression is prefixed by the keyword LATERAL. (The DB2 SQL dialects prefix the lateral query table with the keyword TABLE.) For example, here is a statement containing a lateral table query expression: SELECT d.dept_name, e.emp_name FROM dept d, LATERAL( SELECT emp_id, emp_name FROM emp WHERE emp_dept = d.dept_id ) as e The reference to d.dept_id is legal in a lateral table query, but would not be legal in a regular table query expression.

The following features are supported:

See Also:
SQLQueryModelPackage.getTableQueryLateral()

Method Summary
 QueryExpressionBody getQuery()
          Returns the value of the 'Query' containment reference.
 void setQuery(QueryExpressionBody value)
          Sets the value of the 'Query' containment reference.
 
Methods inherited from interface org.eclipse.datatools.modelbase.sql.query.TableExpression
getColumnList, getMergeTargetTable, getResultTableAllColumns, getTableCorrelation, getValueExprColumns, setMergeTargetTable, setTableCorrelation
 
Methods inherited from interface org.eclipse.datatools.modelbase.sql.query.TableReference
getMergeSourceTable, getNest, getQuerySelect, getTableJoinedLeft, getTableJoinedRight, setMergeSourceTable, setNest, setQuerySelect, setTableJoinedLeft, setTableJoinedRight
 
Methods inherited from interface org.eclipse.datatools.modelbase.sql.query.SQLQueryObject
getSourceInfo, getSQL, setSourceInfo, setSQL
 
Methods inherited from interface org.eclipse.datatools.modelbase.sql.schema.SQLObject
addEAnnotation, addEAnnotationDetail, getComments, getDependencies, getDescription, getEAnnotation, getEAnnotationDetail, getExtensions, getLabel, getPrivileges, removeEAnnotationDetail, setAnnotationDetail, setDescription, setLabel
 
Methods inherited from interface org.eclipse.emf.ecore.ENamedElement
getName, setName
 
Methods inherited from interface org.eclipse.emf.ecore.EModelElement
getEAnnotations
 
Methods inherited from interface org.eclipse.emf.ecore.EObject
eAllContents, eClass, eContainer, eContainingFeature, eContainmentFeature, eContents, eCrossReferences, eGet, eGet, eInvoke, eIsProxy, eIsSet, eResource, eSet, eUnset
 
Methods inherited from interface org.eclipse.emf.common.notify.Notifier
eAdapters, eDeliver, eNotify, eSetDeliver
 

Method Detail

getQuery

QueryExpressionBody getQuery()
Returns the value of the 'Query' containment reference.

If the meaning of the 'Query' containment reference isn't clear, there really should be more of a description here...

Returns:
the value of the 'Query' containment reference.
See Also:
setQuery(QueryExpressionBody), SQLQueryModelPackage.getTableQueryLateral_Query()

setQuery

void setQuery(QueryExpressionBody value)
Sets the value of the 'Query' containment reference.

Parameters:
value - the new value of the 'Query' containment reference.
See Also:
getQuery()