Re: Re: Adding an INTERVAL to a variable

Поиск
Список
Период
Сортировка
От Josh Berkus
Тема Re: Re: Adding an INTERVAL to a variable
Дата
Msg-id web-97981@davinci.ethosmedia.com
обсуждение исходный текст
Ответ на Re: Adding an INTERVAL to a variable  (Vivek Khera <khera@kcilink.com>)
Список pgsql-sql
Graham,

> GC> SELECT Invoices.InvoiceDate + INTERVAL Acct.AverageDaysToPay
> 'Days'

Actually, all you're missing is some punctuation.  Don't skimp on the ::
and () !  Plus, you should use explicit CASTs wherever you remember
them:

SELECT Invoices.InvoiceDate + INTERVAL(CAST(Acct.AverageDaysToPay AS
VARCHAR) || ' days');

Will work fine.  Here I've explicitly cast the Average Days integer (if
it's NUMERIC or FLOAT, you will have to use TO_CHAR()) to varchar, then
concatinated it with the  word "days".  *Then* I convert it to INTERVAL,
which will recognize '# days' as a valid expression.

IMHO, you've been lucky being able to skip the parens and CASTs so far;
get used to using them.

-Josh



______AGLIO DATABASE SOLUTIONS___________________________
                                       Josh Berkus
  Complete information technology      josh@agliodbs.com
   and data management solutions       (415) 565-7293
  for law firms, small businesses        fax 621-2533
    and non-profit organizations.      San Francisco

Вложения

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

Предыдущее
От: Gary Stainburn
Дата:
Сообщение: Re: Are circular REFERENCES possible ?
Следующее
От: Stephan Szabo
Дата:
Сообщение: Re: Are circular REFERENCES possible ?