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

Returns a PgInterval representing self as microseconds

Provided Methods

Returns a PgInterval representing self as milliseconds

Returns a PgInterval representing self as seconds

Returns a PgInterval representing self as minutes

Returns a PgInterval representing self as hours

Identical to microseconds

Identical to milliseconds

Identical to seconds

Identical to minutes

Identical to hours

Implementations on Foreign Types

impl MicroIntervalDsl for i64
[src]

impl MicroIntervalDsl for f64
[src]

Implementors