public class ValueInterval extends Value
| Modifier and Type | Field and Description |
|---|---|
static int |
DEFAULT_PRECISION
The default leading field precision for intervals.
|
static int |
MAXIMUM_PRECISION
The maximum leading field precision for intervals.
|
static int |
MAXIMUM_SCALE
The maximum scale for intervals with seconds.
|
ARRAY, BLOB, BOOLEAN, BYTE, BYTES, CLOB, DATE, DECIMAL, DOUBLE, ENUM, FLOAT, GEOMETRY, INT, INTERVAL_DAY, INTERVAL_DAY_TO_HOUR, INTERVAL_DAY_TO_MINUTE, INTERVAL_DAY_TO_SECOND, INTERVAL_HOUR, INTERVAL_HOUR_TO_MINUTE, INTERVAL_HOUR_TO_SECOND, INTERVAL_MINUTE, INTERVAL_MINUTE_TO_SECOND, INTERVAL_MONTH, INTERVAL_SECOND, INTERVAL_YEAR, INTERVAL_YEAR_TO_MONTH, JAVA_OBJECT, JSON, LONG, MIN_LONG_DECIMAL, NULL, RESULT_SET, ROW, SHORT, STRING, STRING_FIXED, STRING_IGNORECASE, TIME, TIME_TZ, TIMESTAMP, TIMESTAMP_TZ, TYPE_COUNT, UNKNOWN, UUIDDUMMY| Modifier and Type | Method and Description |
|---|---|
Value |
add(Value v)
Add a value and return the result.
|
boolean |
checkPrecision(long prec)
Check if the precision is smaller or equal than the given precision.
|
int |
compareTypeSafe(Value v,
CompareMode mode,
CastDataProvider provider)
Compare this value against another value given that the values are of the
same data type.
|
Value |
convertPrecision(long precision)
Convert the precision to the requested value.
|
Value |
convertScale(boolean onlyToSmallerScale,
int targetScale)
Convert the scale.
|
boolean |
equals(java.lang.Object obj)
Check if the two values have the same hash code.
|
static ValueInterval |
from(IntervalQualifier qualifier,
boolean negative,
long leading,
long remaining)
Create a ValueInterval instance.
|
static int |
getDisplaySize(int type,
int precision,
int scale)
Returns display size for the specified qualifier, precision and
fractional seconds precision.
|
long |
getLeading()
Returns value of leading field of this interval.
|
int |
getMemory()
Get the memory used by this object.
|
java.lang.Object |
getObject()
Get the value as an object.
|
IntervalQualifier |
getQualifier()
Returns the interval qualifier.
|
long |
getRemaining()
Returns combined value of remaining fields of this interval.
|
int |
getSignum() |
java.lang.StringBuilder |
getSQL(java.lang.StringBuilder builder)
Appends the SQL expression for this value to the specified builder.
|
java.lang.String |
getString()
Get the value as a string.
|
TypeInfo |
getType()
Returns the data type.
|
int |
getValueType()
Get the value type.
|
int |
hashCode() |
boolean |
isNegative()
Returns where the interval is negative.
|
Value |
negate()
Return -value if this value support arithmetic operations.
|
void |
set(java.sql.PreparedStatement prep,
int parameterIndex)
Set the value as a parameter in a prepared statement.
|
Value |
subtract(Value v)
Subtract a value and return the result.
|
clearCache, compareTo, compareWithNull, containsNull, convertTo, convertTo, convertTo, convertTo, convertToInt, copy, copyToResult, copyToTemp, divide, getBigDecimal, getBoolean, getByte, getBytes, getBytesNoCopy, getDataHandler, getDate, getDouble, getFloat, getHigherOrder, getHigherType, getInputStream, getInputStream, getInt, getLong, getReader, getReader, getResult, getShort, getSmall, getSQL, getTableId, getTime, getTimestamp, getTraceSQL, getUnsupportedExceptionForOperation, isLinkedToTable, modulus, multiply, remove, toStringgetCommittedValue, getCurrentValue, getOperationId, isCommittedpublic static final int DEFAULT_PRECISION
public static final int MAXIMUM_PRECISION
public static final int MAXIMUM_SCALE
public static ValueInterval from(IntervalQualifier qualifier, boolean negative, long leading, long remaining)
qualifier - qualifiernegative - whether interval is negativeleading - value of leading fieldremaining - values of all remaining fieldspublic static int getDisplaySize(int type,
int precision,
int scale)
type - the value typeprecision - leading field precisionscale - fractional seconds precision. Ignored if specified type of
interval does not have seconds.public java.lang.StringBuilder getSQL(java.lang.StringBuilder builder)
Valuepublic int getValueType()
ValuegetValueType in class Valuepublic int getMemory()
Valuepublic boolean checkPrecision(long prec)
ValuecheckPrecision in class Valueprec - the maximum precisionpublic Value convertScale(boolean onlyToSmallerScale, int targetScale)
ValueconvertScale in class ValueonlyToSmallerScale - if the scale should not reducedtargetScale - the requested scalepublic Value convertPrecision(long precision)
ValueconvertPrecision in class Valueprecision - the new precisionpublic java.lang.String getString()
Valuepublic java.lang.Object getObject()
Valuepublic IntervalQualifier getQualifier()
public boolean isNegative()
public long getLeading()
SECOND
intervals returns integer part of seconds.public long getRemaining()
SECOND intervals returns nanoseconds.public void set(java.sql.PreparedStatement prep,
int parameterIndex)
throws java.sql.SQLException
Valuepublic boolean equals(java.lang.Object obj)
Valuepublic int compareTypeSafe(Value v, CompareMode mode, CastDataProvider provider)
ValuecompareTypeSafe in class Valuev - the other valuemode - the compare modeprovider - the cast information providerpublic Value add(Value v)
Valuepublic Value subtract(Value v)
Value