- All Implemented Interfaces:
Serializable
,Comparable<DayToSecond>
,Interval
INTERVAL DAY TO SECOND
data type.
DayToSecond
is a Number
whose Number.intValue()
represents the (truncated) number of milliseconds of the interval,
Number.doubleValue()
represents the approximative number of
milliseconds (including hours, minutes, seconds, nanoseconds) of the
interval.
Note: only a few databases actually support this data type on its own. You
can still use it for date time arithmetic in other databases, though, through
Field.add(Field)
and Field.sub(Field)
Databases that have
been observed to natively support INTERVAL
data types are:
These dialects have been observed to partially support INTERVAL
data types in date time arithmetic functions, such as
TIMESTAMPADD
, and TIMESTAMPDIFF
:
- Author:
- Lukas Eder
- See Also:
Interval
, Serialized Form
-
Constructor Summary
ConstructorDescriptionCreate a new interval.DayToSecond(int days)
Create a new day interval.DayToSecond(int days, int hours)
Create a new day-hour interval.DayToSecond(int days, int hours, int minutes)
Create a new day-minute interval.DayToSecond(int days, int hours, int minutes, int seconds)
Create a new day-second interval.DayToSecond(int days, int hours, int minutes, int seconds, int nano)
Create a new day-nanoseconds interval. -
Method Summary
Modifier and TypeMethodDescriptionabs()
Get the absolute value of the interval (set its sign to positive)int
compareTo(DayToSecond that)
static DayToSecond
Parse a string representation of aINTERVAL DAY TO HOUR
.static DayToSecond
Parse a string representation of aINTERVAL DAY TO HOUR
.static DayToSecond
dayToMinute(String string)
Parse a string representation of aINTERVAL DAY TO MINUTE
.static DayToSecond
dayToSecond(String string)
Parse a string representation of aINTERVAL DAY TO SECOND
.double
boolean
float
int
getDays()
Get the day-part of this intervalint
getHours()
Get the hour-part of this intervalint
getMicro()
Get the (truncated) micro-part of this intervalint
getMilli()
Get the (truncated) milli-part of this intervalint
Get the minute-part of this intervalint
getNano()
Get the nano-part of this intervalint
Get the second-part of this intervalint
getSign()
The sign of the intervaldouble
Get the whole interval in daysdouble
Get the whole interval in hoursdouble
Get the whole interval in micro-secondsdouble
Get the whole interval in milli-secondsdouble
Get the whole interval in minutesdouble
Get the whole interval in nano-secondsdouble
Get the whole interval in secondsint
hashCode()
static DayToSecond
Parse a string representation of aINTERVAL HOUR
.static DayToSecond
hourToMinute(String string)
Parse a string representation of aINTERVAL HOUR TO MINUTE
.static DayToSecond
hourToSecond(String string)
Parse a string representation of aINTERVAL HOUR TO SECOND
.int
intValue()
long
static DayToSecond
Parse a string representation of aINTERVAL MINUTE
.static DayToSecond
minuteToSecond(String string)
Parse a string representation of aINTERVAL MINUTE TO SECOND
.neg()
Negate the interval (change its sign)static DayToSecond
Parse a string representation of aINTERVAL SECOND
.Get a duration representation of this interval.toString()
static DayToSecond
valueOf(double milli)
Load aDouble
representation of aINTERVAL DAY TO SECOND
by assuming standard 24 hour days and 60 second minutes.static DayToSecond
valueOf(long second, int nanos)
Load aDouble
representation of aINTERVAL DAY TO SECOND
by assuming standard 24 hour days and 60 second minutes.static DayToSecond
Parse a string representation of aINTERVAL DAY TO SECOND
.static DayToSecond
Transform aDuration
into aDayToSecond
interval by taking its number of milliseconds.Methods inherited from class java.lang.Number
byteValue, shortValue
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.jooq.types.Interval
byteValue, shortValue
-
Constructor Details
-
DayToSecond
public DayToSecond()Create a new interval. -
DayToSecond
public DayToSecond(int days)Create a new day interval. -
DayToSecond
public DayToSecond(int days, int hours)Create a new day-hour interval. -
DayToSecond
public DayToSecond(int days, int hours, int minutes)Create a new day-minute interval. -
DayToSecond
public DayToSecond(int days, int hours, int minutes, int seconds)Create a new day-second interval. -
DayToSecond
public DayToSecond(int days, int hours, int minutes, int seconds, int nano)Create a new day-nanoseconds interval.
-
-
Method Details
-
valueOf
Parse a string representation of aINTERVAL DAY TO SECOND
.- Parameters:
string
- A string representation of the form[+|-][days] [hours]:[minutes]:[seconds].[fractional seconds]
- Returns:
- The parsed
INTERVAL DAY TO SECOND
object, ornull
if the string could not be parsed.
-
day
Parse a string representation of aINTERVAL DAY TO HOUR
.- Parameters:
string
- A string representation of the form[+|-][days]
- Returns:
- The parsed
INTERVAL DAY
object, ornull
if the string could not be parsed.
-
dayToHour
Parse a string representation of aINTERVAL DAY TO HOUR
.- Parameters:
string
- A string representation of the form[+|-][days] [hours]
- Returns:
- The parsed
INTERVAL DAY TO HOUR
object, ornull
if the string could not be parsed.
-
dayToMinute
Parse a string representation of aINTERVAL DAY TO MINUTE
.- Parameters:
string
- A string representation of the form[+|-][days] [hours]:[minutes]
- Returns:
- The parsed
INTERVAL DAY TO MINUTE
object, ornull
if the string could not be parsed.
-
dayToSecond
Parse a string representation of aINTERVAL DAY TO SECOND
.- Parameters:
string
- A string representation of the form[+|-][days] [hours]:[minutes]:[seconds].[fractional seconds]
- Returns:
- The parsed
INTERVAL DAY TO MINUTE
object, ornull
if the string could not be parsed.
-
hour
Parse a string representation of aINTERVAL HOUR
.- Parameters:
string
- A string representation of the form[+|-][hours]
- Returns:
- The parsed
INTERVAL HOUR
object, ornull
if the string could not be parsed.
-
hourToMinute
Parse a string representation of aINTERVAL HOUR TO MINUTE
.- Parameters:
string
- A string representation of the form[+|-][hours]:[minutes]
- Returns:
- The parsed
INTERVAL HOUR TO MINUTE
object, ornull
if the string could not be parsed.
-
hourToSecond
Parse a string representation of aINTERVAL HOUR TO SECOND
.- Parameters:
string
- A string representation of the form[+|-][hours]:[minutes]:[seconds].[fractional seconds]
- Returns:
- The parsed
INTERVAL HOUR TO SECOND
object, ornull
if the string could not be parsed.
-
minute
Parse a string representation of aINTERVAL MINUTE
.- Parameters:
string
- A string representation of the form[+|-][minutes]
- Returns:
- The parsed
INTERVAL MINUTE
object, ornull
if the string could not be parsed.
-
minuteToSecond
Parse a string representation of aINTERVAL MINUTE TO SECOND
.- Parameters:
string
- A string representation of the form[+|-][[minutes]:[seconds].[fractional seconds]
- Returns:
- The parsed
INTERVAL MINUTE TO SECOND
object, ornull
if the string could not be parsed.
-
second
Parse a string representation of aINTERVAL SECOND
.- Parameters:
string
- A string representation of the form[+|-][seconds].[fractional seconds]
- Returns:
- The parsed
INTERVAL SECOND
object, ornull
if the string could not be parsed.
-
valueOf
Load aDouble
representation of aINTERVAL DAY TO SECOND
by assuming standard 24 hour days and 60 second minutes.- Parameters:
milli
- The number of milliseconds as a fractional number- Returns:
- The loaded
INTERVAL DAY TO SECOND
object
-
valueOf
Load aDouble
representation of aINTERVAL DAY TO SECOND
by assuming standard 24 hour days and 60 second minutes.- Parameters:
second
- The number of secondsnanos
- The number of nano seconds- Returns:
- The loaded
INTERVAL DAY TO SECOND
object
-
valueOf
Transform aDuration
into aDayToSecond
interval by taking its number of milliseconds. -
toDuration
Description copied from interface:Interval
Get a duration representation of this interval.There is an obvious
Duration
representation forDayToSecond
intervals. If the interval containsYearMonth
information, then the corresponding duration will use:- 1 year = 365.25 days
- 1 month = 30 days
This corresponds to PostgreSQL's
EXTRACT(EPOCH FROM my_interval)
behaviour.- Specified by:
toDuration
in interfaceInterval
-
intValue
public final int intValue()- Specified by:
intValue
in interfaceInterval
- Specified by:
intValue
in classNumber
- See Also:
Number.intValue()
-
longValue
public final long longValue()- Specified by:
longValue
in interfaceInterval
- Specified by:
longValue
in classNumber
- See Also:
Number.longValue()
-
floatValue
public final float floatValue()- Specified by:
floatValue
in interfaceInterval
- Specified by:
floatValue
in classNumber
- See Also:
Number.floatValue()
-
doubleValue
public final double doubleValue()- Specified by:
doubleValue
in interfaceInterval
- Specified by:
doubleValue
in classNumber
- See Also:
Number.doubleValue()
-
neg
Description copied from interface:Interval
Negate the interval (change its sign) -
abs
Description copied from interface:Interval
Get the absolute value of the interval (set its sign to positive) -
getDays
public final int getDays()Get the day-part of this interval -
getHours
public final int getHours()Get the hour-part of this interval -
getMinutes
public final int getMinutes()Get the minute-part of this interval -
getSeconds
public final int getSeconds()Get the second-part of this interval -
getMilli
public final int getMilli()Get the (truncated) milli-part of this interval -
getMicro
public final int getMicro()Get the (truncated) micro-part of this interval -
getNano
public final int getNano()Get the nano-part of this interval -
getTotalDays
public final double getTotalDays()Get the whole interval in days -
getTotalHours
public final double getTotalHours()Get the whole interval in hours -
getTotalMinutes
public final double getTotalMinutes()Get the whole interval in minutes -
getTotalSeconds
public final double getTotalSeconds()Get the whole interval in seconds -
getTotalMilli
public final double getTotalMilli()Get the whole interval in milli-seconds -
getTotalMicro
public final double getTotalMicro()Get the whole interval in micro-seconds -
getTotalNano
public final double getTotalNano()Get the whole interval in nano-seconds -
getSign
public final int getSign()Description copied from interface:Interval
The sign of the interval -
compareTo
- Specified by:
compareTo
in interfaceComparable<DayToSecond>
-
hashCode
public final int hashCode() -
equals
-
toString
-