# Package org.apache.groovy.ginq.dsl.expression

## Package org.apache.groovy.ginq.dsl.expression Description

Expression classes representing query operations in GINQ such as SELECT, FROM, WHERE, GROUP BY, and JOIN clauses.

- Interface Summary
  Interface | Description
  --- | ---
  DataSourceHolder | Represents data source holder, e.g. from, joins, where, groupby, etc.

- Class Summary
  Class | Description
  --- | ---
  AbstractGinqExpression | Represents GINQ expression which could hold metadata
  DataSourceExpression | Represents data source expression
  FilterExpression | Represents filter expression
  FromExpression | Represents the from expression
  GinqExpression | Represents GINQ expression, which has the following structure:
           ginq
           |__ from
           |__ [innerjoin/leftjoin/rightjoin/fulljoin/crossjoin]*
           |   |__ on
           |__ [where]
           |__ [groupby] [into]
           |   |__ [having]
           |__ [orderby]
           |__ [limit]
           |__ select
  (Note: [ ] means optional)
  GroupExpression | Represents group by expression
  HavingExpression | Represents having expression
  JoinExpression | Represents join expression
  LimitExpression | Represents limit expression
  OnExpression | Represents on expression
  OrderExpression | Represents order by expression
  ProcessExpression | Represents process expression, e.g. where, groupby, orderby, limit, select
  SelectExpression | Represents the select expression
  SetOperationExpression | Represents a set operation (union, unionall, intersect, minus) combining two GINQ expressions.
  ShutdownExpression | Represent the shutdown expression
  WhereExpression | Represent the where expression