Re: Interval "1 month" is equals to interval "30 days" - WHY? - Mailing list pgsql-general

From Dmitry Koterov
Subject Re: Interval "1 month" is equals to interval "30 days" - WHY?
Date
Msg-id CA+CZih5-PwDgs1VEQDjvD29P=7zG0vX6cJ-5QMyVP6jsPSrfng@mail.gmail.com
Whole thread Raw
In response to Re: Interval "1 month" is equals to interval "30 days" - WHY?  ("Albe Laurenz" <laurenz.albe@wien.gv.at>)
List pgsql-general
BTW there are a much more short version of this:

CREATE OR REPLACE FUNCTION int_equal(interval, interval) RETURNS boolean
IMMUTABLE STRICT LANGUAGE sql AS 
'SELECT $1::text = $2::text';


On Wed, Aug 8, 2012 at 4:51 PM, Albe Laurenz <laurenz.albe@wien.gv.at> wrote:
Then maybe you should use something like this for equality:

CREATE OR REPLACE FUNCTION int_equal(interval, interval) RETURNS boolean
  IMMUTABLE STRICT LANGUAGE sql AS
  'SELECT
        12 * EXTRACT (YEAR FROM $1) + EXTRACT (MONTH FROM $1)
      = 12 * EXTRACT (YEAR FROM $2) + EXTRACT (MONTH FROM $2)
    AND EXTRACT (DAY FROM $1) = EXTRACT (DAY FROM $2)
    AND 3600000000 * EXTRACT (HOUR FROM $1)
        + 60000000 * EXTRACT (MINUTE FROM $1)
        + EXTRACT (MICROSECONDS FROM $1)
      = 3600000000 * EXTRACT (HOUR FROM $2)
        + 60000000 * EXTRACT (MINUTE FROM $2)
        + EXTRACT (MICROSECONDS FROM $2)';

pgsql-general by date:

Previous
From: Ashesh Vashi
Date:
Subject: Re: I: Installation faillure version 8.4.12
Next
From: Craig Ringer
Date:
Subject: Re: Windows SIngle Sign On - LINUX Server