Re: INTERVAL data type and libpq - what format?

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: INTERVAL data type and libpq - what format?
Дата
Msg-id 10960.1243197679@sss.pgh.pa.us
обсуждение исходный текст
Ответ на Re: INTERVAL data type and libpq - what format?  (Ron Mayer <rm_pg@cheapcomplexdevices.com>)
Ответы Re: INTERVAL data type and libpq - what format?  (Sebastien FLAESCH <sf@4js.com>)
Список pgsql-general
Ron Mayer <rm_pg@cheapcomplexdevices.com> writes:
> Sam Mason wrote:
>> You get an error because " 123 11" isn't a valid literal of an
>> (undecorated) INTERVAL type.

> Hmm..... should it be?

Well, we do allow it if it's *explicitly* stated to be a day to hour
interval:

regression=# select interval '123 11' day to hour;
     interval
-------------------
 123 days 11:00:00
(1 row)

What's at issue here is what should happen without that context.
I'm inclined to think this is ambiguous enough that accepting it
silently isn't such a great idea.  I'm also not convinced that the
SQL spec says we must --- the syntax for <interval literal> does
not appear to allow omitting the fields specification.

In a related example,

regression=# select interval '123 11' day;
 interval
----------
 134 days
(1 row)

we seem to be adding the 123 and 11 together.  This is, um,
surprising behavior ... I'd be inclined to think throwing an
error is more appropriate.

            regards, tom lane

В списке pgsql-general по дате отправления:

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: question about SSIS
Следующее
От: marco santillan
Дата:
Сообщение: Query