Re: Interval "1 month" is equals to interval "30 days" - WHY?

Поиск
Список
Период
Сортировка
От Dmitry Koterov
Тема Re: Interval "1 month" is equals to interval "30 days" - WHY?
Дата
Msg-id CA+CZih5-PwDgs1VEQDjvD29P=7zG0vX6cJ-5QMyVP6jsPSrfng@mail.gmail.com
обсуждение исходный текст
Ответ на Re: Interval "1 month" is equals to interval "30 days" - WHY?  ("Albe Laurenz" <laurenz.albe@wien.gv.at>)
Список 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 по дате отправления:

Предыдущее
От: Ashesh Vashi
Дата:
Сообщение: Re: I: Installation faillure version 8.4.12
Следующее
От: Craig Ringer
Дата:
Сообщение: Re: Windows SIngle Sign On - LINUX Server