Class SumFunction
java.lang.Object
org.eclipse.persistence.jpa.jpql.parser.AbstractExpression
org.eclipse.persistence.jpa.jpql.parser.AbstractEncapsulatedExpression
org.eclipse.persistence.jpa.jpql.parser.AbstractSingleEncapsulatedExpression
org.eclipse.persistence.jpa.jpql.parser.AggregateFunction
org.eclipse.persistence.jpa.jpql.parser.SumFunction
- All Implemented Interfaces:
Expression
One of the aggregate functions. The arguments must be numeric.
SUM returns Long
when applied to state-fields of integral types (other than
BigInteger
); Double
when applied to state-fields of floating point
types; BigInteger
when applied to state-fields of type BigInteger
; and
BigDecimal
when applied to state-fields of type BigDecimal
. If
SUM, AVG, MAX, or MIN is used, and there are no values to which the
aggregate function can be applied, the result of the aggregate function is NULL
. If
COUNT
is used, and there are no values to which COUNT can be applied, the
result of the aggregate function is 0.
BNF:
expression ::= SUM([DISTINCT] state_field_path_expression)
- Since:
- 2.3
- Version:
- 2.5
-
Field Summary
Fields inherited from class org.eclipse.persistence.jpa.jpql.parser.AbstractExpression
COMMA, DOT, DOUBLE_QUOTE, LEFT_CURLY_BRACKET, LEFT_PARENTHESIS, NOT_DEFINED, RIGHT_CURLY_BRACKET, RIGHT_PARENTHESIS, SINGLE_QUOTE, SPACE, UNDERSCORE
Fields inherited from interface org.eclipse.persistence.jpa.jpql.parser.Expression
ABS, ALL, AND, ANY, AS, AS_OF, ASC, AVG, BETWEEN, BIT_LENGTH, BOTH, CASE, CAST, CEILING, CHAR_LENGTH, CHARACTER_LENGTH, CLASS, COALESCE, COLUMN, CONCAT, CONNECT_BY, COUNT, CURRENT_DATE, CURRENT_TIME, CURRENT_TIMESTAMP, DATE, DATETIME, DELETE, DELETE_FROM, DESC, DIFFERENT, DISTINCT, DIVISION, ELSE, EMPTY, END, ENTRY, EQUAL, ESCAPE, EXCEPT, EXISTS, EXP, EXTRACT, FALSE, FETCH, FIRST, FLOOR, FROM, FUNC, FUNCTION, GREATER_THAN, GREATER_THAN_OR_EQUAL, GROUP_BY, HAVING, IN, INDEX, INNER, INNER_JOIN, INNER_JOIN_FETCH, INTERSECT, IS, IS_EMPTY, IS_NOT_EMPTY, IS_NOT_NULL, IS_NULL, JOIN, JOIN_FETCH, KEY, LAST, LEADING, LEFT, LEFT_JOIN, LEFT_JOIN_FETCH, LEFT_OUTER_JOIN, LEFT_OUTER_JOIN_FETCH, LENGTH, LIKE, LN, LOCAL, LOCATE, LOWER, LOWER_THAN, LOWER_THAN_OR_EQUAL, MAX, MEMBER, MEMBER_OF, MIN, MINUS, MOD, MULTIPLICATION, NAMED_PARAMETER, NEW, NOT, NOT_BETWEEN, NOT_EQUAL, NOT_EXISTS, NOT_IN, NOT_LIKE, NOT_MEMBER, NOT_MEMBER_OF, NULL, NULLIF, NULLS, NULLS_FIRST, NULLS_LAST, OBJECT, OF, ON, OPERATOR, OR, ORDER_BY, ORDER_SIBLINGS_BY, OUTER, PLUS, POSITION, POSITIONAL_PARAMETER, POWER, QUOTE, REGEXP, ROUND, SCN, SELECT, SET, SIGN, SIZE, SOME, SQL, SQRT, START_WITH, SUBSTRING, SUM, TABLE, THEN, TIME, TIMESTAMP, TRAILING, TREAT, TRIM, TRUE, TYPE, UNION, UNKNOWN, UPDATE, UPPER, VALUE, WHEN, WHERE
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
accept
(ExpressionVisitor visitor) Visits thisExpression
by the givenvisitor
.Methods inherited from class org.eclipse.persistence.jpa.jpql.parser.AggregateFunction
addOrderedEncapsulatedExpressionTo, buildEncapsulatedExpression, getActualDistinctIdentifier, getEncapsulatedExpressionQueryBNFId, getQueryBNF, hasDistinct, hasSpaceAfterDistinct, parseEncapsulatedExpression, toParsedTextEncapsulatedExpression
Methods inherited from class org.eclipse.persistence.jpa.jpql.parser.AbstractSingleEncapsulatedExpression
acceptChildren, addChildrenTo, findQueryBNF, getExpression, hasEncapsulatedExpression, hasExpression, removeEncapsulatedExpression, setExpression
Methods inherited from class org.eclipse.persistence.jpa.jpql.parser.AbstractEncapsulatedExpression
addOrderedChildrenTo, areLogicalIdentifiersSupported, getActualIdentifier, getIdentifier, hasLeftParenthesis, hasRightParenthesis, hasSpaceAfterIdentifier, isParsingComplete, parse, shouldParseRightParenthesis, toParsedText
Methods inherited from class org.eclipse.persistence.jpa.jpql.parser.AbstractExpression
acceptUnknownVisitor, acceptUnknownVisitor, buildExpressionFromFallingBack, buildNullExpression, buildStringExpression, buildStringExpression, buildUnknownExpression, calculatePosition, children, findFallBackExpressionFactory, getExpressionFactory, getExpressionRegistry, getGrammar, getIdentifierVersion, getJPAVersion, getLength, getOffset, getParent, getQueryBNF, getRoot, getText, handleAggregate, handleCollection, isAncestor, isIdentifier, isNull, isTolerant, isUnknown, isVirtual, orderedChildren, parse, parseUsingExpressionFactory, populatePosition, rebuildActualText, rebuildParsedText, setParent, setText, shouldParseWithFactoryFirst, shouldSkipLiteral, toActualText, toParsedText, toString
-
Constructor Details
-
SumFunction
Creates a newSumFunction
.- Parameters:
parent
- The parent of this expression
-
-
Method Details
-
accept
Description copied from interface:Expression
Visits thisExpression
by the givenvisitor
.- Parameters:
visitor
- TheExpressionVisitor
to visit this object
-