Package io.trino.util

Class DateTimeUtils

java.lang.Object
io.trino.util.DateTimeUtils

public final class DateTimeUtils extends Object
  • Method Details

    • parseDate

      public static int parseDate(String value)
    • printDate

      public static String printDate(int days)
    • convertToTimestampWithTimeZone

      public static long convertToTimestampWithTimeZone(TimeZoneKey timeZoneKey, String timestampWithTimeZone)
      Parse a string (optionally containing a zone) as a value of TIMESTAMP WITH TIME ZONE type. If the string doesn't specify a zone, it is interpreted in timeZoneKey zone.

      For example: "2000-01-01 01:23:00" is parsed to TIMESTAMP WITH TIME ZONE 2000-01-01T01:23:00 <provided zone> and "2000-01-01 01:23:00 +01:23" is parsed to TIMESTAMP WITH TIME ZONE 2000-01-01T01:23:00.000+01:23.

      Returns:
      stack representation of TIMESTAMP WITH TIME ZONE type
    • parseLegacyTime

      @Deprecated public static long parseLegacyTime(TimeZoneKey timeZoneKey, String value)
      Deprecated.
      applicable in legacy timestamp semantics only
      Parse a string (without a zone) as a value of TIME type, interpreted in timeZoneKey zone.
      Returns:
      stack representation of legacy TIME type
    • parseDayTimeInterval

      public static long parseDayTimeInterval(String value, IntervalLiteral.IntervalField startField, Optional<IntervalLiteral.IntervalField> endField)
    • parsePeriodMillis

      public static long parsePeriodMillis(org.joda.time.format.PeriodFormatter periodFormatter, String value, IntervalLiteral.IntervalField startField, IntervalLiteral.IntervalField endField)
    • parseYearMonthInterval

      public static long parseYearMonthInterval(String value, IntervalLiteral.IntervalField startField, Optional<IntervalLiteral.IntervalField> endField)