Class AbstractSelectClause

  • All Implemented Interfaces:
    Expression
    Direct Known Subclasses:
    SelectClause, SimpleSelectClause

    public abstract class AbstractSelectClause
    extends AbstractExpression
    The SELECT clause denotes the query result. More than one value may be returned from the SELECT clause of a query. The SELECT clause may contain one or more of the following elements: a single range variable or identification variable that ranges over an entity abstract schema type, a single-valued path expression, an aggregate select expression, a constructor expression.

    The DISTINCT keyword is used to specify that duplicate values must be eliminated from the query result. If DISTINCT is not specified, duplicate values are not eliminated. Stand-alone identification variables in the SELECT clause may optionally be qualified by the OBJECT operator. The SELECT clause must not use the OBJECT operator to qualify path expressions.

    Since:
    2.3
    Version:
    2.5
    Author:
    Pascal Filion
    See Also:
    SelectClause, SimpleSelectClause
    • Method Detail

      • buildCollectionExpression

        public CollectionExpression buildCollectionExpression()
        Creates a new CollectionExpression that will wrap the single select item.
        Returns:
        The single select item represented by a temporary collection
      • getActualDistinctIdentifier

        public final String getActualDistinctIdentifier()
        Returns the actual DISTINCT identifier found in the string representation of the JPQL query, which has the actual case that was used.
        Returns:
        The DISTINCT identifier that was actually parsed, or an empty string if it was not parsed
        Since:
        2.4
      • getActualIdentifier

        public final String getActualIdentifier()
        Returns the actual SELECT identifier found in the string representation of the JPQL query, which has the actual case that was used.
        Returns:
        The SELECT identifier that was actually parsed
      • getSelectExpression

        public final Expression getSelectExpression()
        Returns the Expression representing the select items.
        Returns:
        The expression representing the select items
      • getSelectItemQueryBNFId

        public abstract String getSelectItemQueryBNFId()
        Returns the unique identifier of the JPQLQueryBNF for the list of select items to parse.
        Returns:
        The ID of the query BNF for the list of select items to parse
      • hasDistinct

        public final boolean hasDistinct()
        Determines whether the identifier DISTINCT was parsed or not.
        Returns:
        true if the identifier DISTINCT was parsed; false otherwise
      • hasSelectExpression

        public final boolean hasSelectExpression()
        Determines whether the list of select items was parsed.
        Returns:
        true the list of select items was parsed; false otherwise
      • hasSpaceAfterDistinct

        public final boolean hasSpaceAfterDistinct()
        Determines whether a whitespace was parsed after DISTINCT.
        Returns:
        true if there was a whitespace after DISTINCT; false otherwise
      • hasSpaceAfterSelect

        public final boolean hasSpaceAfterSelect()
        Determines whether a whitespace was parsed after SELECT.
        Returns:
        true if there was a whitespace after SELECT; false otherwise