org.hibernate.criterion
Class Projections

java.lang.Object
  extended by org.hibernate.criterion.Projections

public final class Projections
extends Object

The criterion package may be used by applications as a framework for building new kinds of Projection. However, it is intended that most applications will simply use the built-in projection types via the static factory methods of this class.

The factory methods that take an alias allow the projected value to be referred to by criterion and order instances.

Author:
Gavin King
See Also:
Criteria, factory methods for Criterion instances

Method Summary
static Projection alias(Projection projection, String alias)
          Assign an alias to a projection, by wrapping it
static AggregateProjection avg(String propertyName)
          A property average value
static CountProjection count(String propertyName)
          A property value count
static CountProjection countDistinct(String propertyName)
          A distinct property value count
static Projection distinct(Projection proj)
          Create a distinct projection from a projection
static PropertyProjection groupProperty(String propertyName)
          A grouping property value
static IdentifierProjection id()
          A projected identifier value
static AggregateProjection max(String propertyName)
          A property maximum value
static AggregateProjection min(String propertyName)
          A property minimum value
static ProjectionList projectionList()
          Create a new projection list
static PropertyProjection property(String propertyName)
          A projected property value
static Projection rowCount()
          The query row count, ie.
static Projection sqlGroupProjection(String sql, String groupBy, String[] columnAliases, Type[] types)
          A grouping SQL projection, specifying both select clause and group by clause fragments
static Projection sqlProjection(String sql, String[] columnAliases, Type[] types)
          A SQL projection, a typed select clause fragment
static AggregateProjection sum(String propertyName)
          A property value sum
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

distinct

public static Projection distinct(Projection proj)
Create a distinct projection from a projection


projectionList

public static ProjectionList projectionList()
Create a new projection list


rowCount

public static Projection rowCount()
The query row count, ie. count(*)


count

public static CountProjection count(String propertyName)
A property value count


countDistinct

public static CountProjection countDistinct(String propertyName)
A distinct property value count


max

public static AggregateProjection max(String propertyName)
A property maximum value


min

public static AggregateProjection min(String propertyName)
A property minimum value


avg

public static AggregateProjection avg(String propertyName)
A property average value


sum

public static AggregateProjection sum(String propertyName)
A property value sum


sqlProjection

public static Projection sqlProjection(String sql,
                                       String[] columnAliases,
                                       Type[] types)
A SQL projection, a typed select clause fragment


sqlGroupProjection

public static Projection sqlGroupProjection(String sql,
                                            String groupBy,
                                            String[] columnAliases,
                                            Type[] types)
A grouping SQL projection, specifying both select clause and group by clause fragments


groupProperty

public static PropertyProjection groupProperty(String propertyName)
A grouping property value


property

public static PropertyProjection property(String propertyName)
A projected property value


id

public static IdentifierProjection id()
A projected identifier value


alias

public static Projection alias(Projection projection,
                               String alias)
Assign an alias to a projection, by wrapping it