Class GroupBy

java.lang.Object
org.iplass.mtp.entity.query.GroupBy
All Implemented Interfaces:
Serializable, ASTNode

public class GroupBy extends Object implements ASTNode
GROUP BY句を表す。
See Also:
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static enum 
     
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    accept(ASTTransformer transformer)
     
    void
     
    add(Object groupingField)
     
    add(ValueExpression groupingField)
     
    boolean
     
     
     
    int
     
    void
     
    void
    集約関数利用する際の、 group byする集約する項目毎の集計行(小計、合計)を同時に取得する場合は、 rollTypeを指定する。
    ※このRollType指定は、SQL/2008のExtended grouping capabilities(Group by with ROLLUP/CUBE)にマッピングされる。 一部のRDBではSQLレベルでROLLUP/CUBEに対応していない。また、ORDER BYとの併用が出来なかったりする。 その場合は、RollTypeを指定しても意図したとおりに動作しない。 DBサポートするタイプEQLで指定した際の動作ORDER BYとの併用 OracleROLLUP/CUBE意図したとおりに小計、合計を取得可能 MySQLROLLUPCUBEを指定してもROLLUPとして動作不可。ORDER BYを無視 PostgreSQL未サポート指定されていないものとして動作ROLLUP無視。ORDER BYのみ有効
     

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait

    Methods inherited from interface org.iplass.mtp.entity.query.ASTNode

    copy
  • Constructor Details

    • GroupBy

      public GroupBy()
  • Method Details

    • getGroupingFieldList

      public List<ValueExpression> getGroupingFieldList()
    • setGroupingFieldList

      public void setGroupingFieldList(List<ValueExpression> groupingFieldList)
    • setRollType

      public void setRollType(GroupBy.RollType rollType)
      集約関数利用する際の、 group byする集約する項目毎の集計行(小計、合計)を同時に取得する場合は、 rollTypeを指定する。
      ※このRollType指定は、SQL/2008のExtended grouping capabilities(Group by with ROLLUP/CUBE)にマッピングされる。 一部のRDBではSQLレベルでROLLUP/CUBEに対応していない。また、ORDER BYとの併用が出来なかったりする。 その場合は、RollTypeを指定しても意図したとおりに動作しない。
      DBサポートするタイプEQLで指定した際の動作ORDER BYとの併用
      OracleROLLUP/CUBE意図したとおりに小計、合計を取得可能
      MySQLROLLUPCUBEを指定してもROLLUPとして動作不可。ORDER BYを無視
      PostgreSQL未サポート指定されていないものとして動作ROLLUP無視。ORDER BYのみ有効
      Parameters:
      rollType - RollType.ROLLUPを指定
    • getRollType

      public GroupBy.RollType getRollType()
    • accept

      public ASTNode accept(ASTTransformer transformer)
      Specified by:
      accept in interface ASTNode
    • accept

      public void accept(QueryVisitor visitor)
    • add

      public GroupBy add(ValueExpression groupingField)
    • add

      public GroupBy add(Object groupingField)
    • toString

      public String toString()
      Specified by:
      toString in interface ASTNode
      Overrides:
      toString in class Object
    • hashCode

      public int hashCode()
      Specified by:
      hashCode in interface ASTNode
      Overrides:
      hashCode in class Object
    • equals

      public boolean equals(Object obj)
      Specified by:
      equals in interface ASTNode
      Overrides:
      equals in class Object