public final class ExtractExpression extends AbstractSingleEncapsulatedExpression
YEAR, MONTH, DAY, HOUR, MINUTE,
SECOND. Some databases may support other parts.
extract_expression ::= EXTRACT(date_part_literal [FROM] scalar_expression)date_part_literal ::= { MICROSECOND | SECOND | MINUTE | HOUR | DAY | WEEK | MONTH | QUARTER | YEAR | SECOND_MICROSECOND | MINUTE_MICROSECOND | MINUTE_SECOND | HOUR_MICROSECOND | HOUR_SECOND | HOUR_MINUTE | DAY_MICROSECOND | DAY_SECOND | DAY_MINUTE | DAY_HOUR | YEAR_MONTH, etc }
COMMA, DOT, DOUBLE_QUOTE, LEFT_CURLY_BRACKET, LEFT_PARENTHESIS, NOT_DEFINED, RIGHT_CURLY_BRACKET, RIGHT_PARENTHESIS, SINGLE_QUOTE, SPACE, UNDERSCOREABS, ALL, AND, ANY, AS, AS_OF, ASC, AVG, BETWEEN, BIT_LENGTH, BOTH, CASE, CAST, CHAR_LENGTH, CHARACTER_LENGTH, CLASS, COALESCE, COLUMN, CONCAT, CONNECT_BY, COUNT, CURRENT_DATE, CURRENT_TIME, CURRENT_TIMESTAMP, DELETE, DELETE_FROM, DESC, DIFFERENT, DISTINCT, DIVISION, ELSE, EMPTY, END, ENTRY, EQUAL, ESCAPE, EXCEPT, EXISTS, EXTRACT, FALSE, FETCH, FIRST, 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, 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, QUOTE, REGEXP, SCN, SELECT, SET, SIZE, SOME, SQL, SQRT, START_WITH, SUBSTRING, SUM, TABLE, THEN, TIMESTAMP, TRAILING, TREAT, TRIM, TRUE, TYPE, UNION, UNKNOWN, UPDATE, UPPER, VALUE, WHEN, WHERE| Constructor and Description |
|---|
ExtractExpression(AbstractExpression parent)
Creates a new
ExtractExpression. |
| Modifier and Type | Method and Description |
|---|---|
void |
accept(ExpressionVisitor visitor)
Visits this
Expression by the given visitor. |
java.lang.String |
getActualFromIdentifier()
Returns the actual FROM identifier found in the string representation of the JPQL
query, which has the actual case that was used.
|
java.lang.String |
getDatePart()
Returns the date part that was parsed, it is used to extract a single part of a date/time,
such as year, month, day, your, etc.
|
java.lang.String |
getEncapsulatedExpressionQueryBNFId()
Returns the BNF used to parse the encapsulated expression.
|
JPQLQueryBNF |
getQueryBNF()
Returns the BNF of this
Expression. |
boolean |
hasDatePart()
Determines whether the date part literal was parsed or not.
|
boolean |
hasEncapsulatedExpression()
Determines whether something was parsed after the left parenthesis.
|
boolean |
hasFrom()
Determines whether the identifier FROM was part of the query.
|
boolean |
hasSpaceAfterDatePart()
Determines whether a whitespace was found after the date part literal.
|
boolean |
hasSpaceAfterFrom()
Determines whether a whitespace was found after FROM.
|
acceptChildren, findQueryBNF, getExpression, hasExpression, setExpressiongetActualIdentifier, getIdentifier, hasLeftParenthesis, hasRightParenthesis, hasSpaceAfterIdentifierchildren, getGrammar, getIdentifierVersion, getLength, getOffset, getParent, getQueryBNF, getRoot, isAncestor, orderedChildren, populatePosition, toActualText, toParsedText, toStringpublic ExtractExpression(AbstractExpression parent)
ExtractExpression.parent - The parent of this expressionpublic void accept(ExpressionVisitor visitor)
Expression by the given visitor.visitor - The ExpressionVisitor to visit this objectpublic java.lang.String getEncapsulatedExpressionQueryBNFId()
getEncapsulatedExpressionQueryBNFId in class AbstractSingleEncapsulatedExpressionpublic java.lang.String getActualFromIdentifier()
public java.lang.String getDatePart()
public JPQLQueryBNF getQueryBNF()
Expression.JPQLQueryBNF, which represents the grammar of this Expressionpublic boolean hasDatePart()
true if the date part literal was parsed; false otherwisepublic boolean hasEncapsulatedExpression()
hasEncapsulatedExpression in class AbstractSingleEncapsulatedExpressiontrue if something was parsed; false otherwisepublic boolean hasFrom()
true if the identifier FROM was parsed; false otherwisepublic boolean hasSpaceAfterDatePart()
true if there was a whitespace after the date part literal;
false otherwisepublic boolean hasSpaceAfterFrom()
true if there was a whitespace after FROM; false otherwiseEclipseLink 2.6.3, "build v20160428-59c81c5" API Reference