Trait diesel::pg::expression::extensions::MicroIntervalDsl postgres
[−]
[src]
pub trait MicroIntervalDsl: Sized + Mul<Self, Output = Self> { fn microseconds(self) -> PgInterval; fn milliseconds(self) -> PgInterval { ... } fn seconds(self) -> PgInterval { ... } fn minutes(self) -> PgInterval { ... } fn hours(self) -> PgInterval { ... } fn microsecond(self) -> PgInterval { ... } fn millisecond(self) -> PgInterval { ... } fn second(self) -> PgInterval { ... } fn minute(self) -> PgInterval { ... } fn hour(self) -> PgInterval { ... } }
A DSL added to i64
and f64
to construct PostgreSQL intervals of less
than 1 day.
The behavior of these methods when called on NAN
or Infinity
is
undefined.
Example
connection.execute("INSERT INTO users (name, created_at) VALUES ('Sean', NOW()), ('Tess', NOW() - '5 minutes'::interval), ('Jim', NOW() - '10 minutes'::interval)").unwrap(); let mut data: Vec<String> = users .select(name) .filter(created_at.gt(now - 7.minutes())) .load(&connection).unwrap(); assert_eq!(2, data.len()); assert_eq!("Sean".to_string(), data[0]); assert_eq!("Tess".to_string(), data[1]);
Required Methods
fn microseconds(self) -> PgInterval
Returns a PgInterval representing self
as microseconds
Provided Methods
fn milliseconds(self) -> PgInterval
Returns a PgInterval representing self
as milliseconds
fn seconds(self) -> PgInterval
Returns a PgInterval representing self
as seconds
fn minutes(self) -> PgInterval
Returns a PgInterval representing self
as minutes
fn hours(self) -> PgInterval
Returns a PgInterval representing self
as hours
fn microsecond(self) -> PgInterval
Identical to microseconds
fn millisecond(self) -> PgInterval
Identical to milliseconds
fn second(self) -> PgInterval
Identical to seconds
fn minute(self) -> PgInterval
Identical to minutes
fn hour(self) -> PgInterval
Identical to hours