Npgsql Api Docs

NpgsqlInterval Properties

The properties of the NpgsqlInterval structure are listed below. For a complete list of NpgsqlInterval structure members, see the NpgsqlInterval Members topic.

Public Instance Properties

Days Gets the number of days held in the instance. Note that this does not pay attention to a time component with -24 or less hours or 24 or more hours, unless JustifyDays has been called to produce this instance.
Hours Gets the number of whole hours held in the instance. Note that this can be less than -23 or greater than 23 unless JustifyDays has been used to produce this instance.
Microseconds Gets the number of whole microseconds held in the instance. An in the range [-999999, 999999].
Milliseconds Gets the number of whole milliseconds held in the instance. An in the range [-999, 999].
Minutes Gets the number of whole minutes held in the instance. An in the range [-59, 59].
Months Gets the number of months held in the instance. Note that this does not pay attention to a day component with -30 or less days or 30 or more days, unless JustifyMonths has been called to produce this instance.
Seconds Gets the number of whole seconds held in the instance. An in the range [-59, 59].
Ticks The total number of ticks(100ns units) contained. This is the resolution of the NpgsqlInterval type. This ignores the number of days and months held. If you want them included use UnjustifyInterval first. The resolution of the PostgreSQL interval type is by default 1µs = 1,000 ns. It may be smaller as follows:
  1. interval(0) - resolution of 1s (1 second)
  2. interval(1) - resolution of 100ms = 0.1s (100 milliseconds)
  3. interval(2) - resolution of 10ms = 0.01s (10 milliseconds)
  4. interval(3) - resolution of 1ms = 0.001s (1 millisecond)
  5. interval(4) - resolution of 100µs = 0.0001s (100 microseconds)
  6. interval(5) - resolution of 10µs = 0.00001s (10 microseconds)
  7. interval(6) or interval - resolution of 1µs = 0.000001s (1 microsecond)

As such, if the 100-nanosecond resolution is significant to an application, a PostgreSQL interval will not suffice for those purposes.

In more frequent cases though, the resolution of the interval suffices. NpgsqlInterval will always suffice to handle the resolution of any interval value, and upon writing to the database, will be rounded to the resolution used.

The number of ticks in the instance.
Time Returns a TimeSpan representing the time component of the instance. Note that this may have a value beyond the range ±23:59:59.9999999 unless JustifyDays has been called to produce this instance.
TotalDays The total number of days in the instance, assuming 24 hours in each day and 30 days in a month.
TotalHours The total number of hours in the instance, assuming 24 hours in each day and 30 days in a month.
TotalMicroseconds The total number of microseconds in the instance, assuming 24 hours in each day and 30 days in a month.
TotalMilliseconds The total number of milliseconds in the instance, assuming 24 hours in each day and 30 days in a month.
TotalMinutes The total number of minutes in the instance, assuming 24 hours in each day and 30 days in a month.
TotalMonths The total number of months in the instance, assuming 24 hours in each day and 30 days in a month.
TotalSeconds The total number of seconds in the instance, assuming 24 hours in each day and 30 days in a month.
TotalTicks The total number of ticks (100ns units) in the instance, assuming 24 hours in each day and 30 days in a month.

See Also

NpgsqlInterval Class | NpgsqlTypes Namespace | Ticks | JustifyDays | JustifyMonths | Canonicalize