Class ExpressionSelect

java.lang.Object
net.sf.basedb.core.query.ExpressionSelect
All Implemented Interfaces:
QueryElement, Select

public class ExpressionSelect
extends Object
implements Select
A selection query element that selects an expression, optionally giving it an alias.
SELECT <expression> AS <alias>
FROM ...
Version:
2.0
Author:
Nicklas
See Also:
Selects.expression(Expression, String)
Last modified
$Date: 2012-09-14 09:28:35 +0200 (fr, 14 sep 2012) $
  • Field Details

    • e1

      private final Expression e1
    • alias

      private final String alias
    • useInDistinctCount

      private final boolean useInDistinctCount
  • Constructor Details

    • ExpressionSelect

      ExpressionSelect​(Expression e1, String alias, boolean useInDistinctCount)
  • Method Details

    • toQl

      public String toQl​(Query query, DbControl dc) throws BaseException
      Description copied from interface: QueryElement
      Create a query language string of the query element. Use the Query.getQueryType() method to find out which query language is wanted in case the element requires different syntax for different languages.
      Specified by:
      toQl in interface QueryElement
      Parameters:
      query - The query that is about to be executed
      dc - The DbControl object used to execute the query
      Throws:
      BaseException - If there is any other error
    • getChildren

      public Collection<? extends QueryElement> getChildren()
      Description copied from interface: QueryElement
      Get the children of this query element or null if it has no children. For example the AddExpression has two children, the expression beeing added.
      Specified by:
      getChildren in interface QueryElement
      Returns:
      The expressions to select
    • getAlias

      public String getAlias()
      Description copied from interface: Select
      Get the alias of the selected expression.
      Specified by:
      getAlias in interface Select
      Returns:
      The alias, or null if no alias has been specified
    • getExpression

      public Expression getExpression()
      Description copied from interface: Select
      Get the expression object representing the selected expression.
      Specified by:
      getExpression in interface Select
      Returns:
      An expression object
    • useInDistinctCount

      public boolean useInDistinctCount()
      Description copied from interface: Select
      If this expression should be use in count distinct queries or not.
      SELECT COUNT(DISTINCT expression)
      
      Specified by:
      useInDistinctCount in interface Select
      Returns:
      TRUE or FALSE
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • equals

      public boolean equals​(Object other)
      This expression is equal to another ExpressionSelect if their child expressions and aliases are equal.
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object