Re: Cast: timestamp to integer

Поиск
Список
Период
Сортировка
От Csaba Nagy
Тема Re: Cast: timestamp to integer
Дата
Msg-id 1055437267.10809.45.camel@coppola.ecircle.de
обсуждение исходный текст
Ответ на Cast: timestamp to integer  (Michal Durys <joe@anime.com.pl>)
Список pgsql-general
I don't have a completely satisfactory solution for this, but you could
do something like this:

SELECT id, name, counter, counter/extract(days FROM
current_timestamp - date_add) + 1) AS ratio  FROM dnload_files WHERE counter>0;

This is because the timestamp substraction will return you the result in
days. But this is still a hack.

Cheers,
Csaba.

On Thu, 2003-06-12 at 18:44, Michal Durys wrote:
> Hello,
>
> I hope it's not a question for psql-novice. ;-)
>
> I'd like to convert timestamp and date fields to intergers.
> Unfortunately cast() says it's impossible:
>
> ERROR: Cannot cast type date to integer
> ERROR: Cannot cast type timestamp without time zone to integer
>
> I'm quite sure it should be possible somehow. After all timestamp is
> (AFAIR) number of seconds counted from 1970.
>
> I need it for example to caclulate average number of downloads of a
> given file a day. For the time being I came up with an ugly solution
> like this:
>
> SELECT id, name, counter, counter/(extract(years FROM age(date_add))*365
> + extract(months FROM age(date_add))*30 + extract(days FROM
> age(date_add)) + 1) AS ratio  FROM dnload_files WHERE counter>0;
>
> I will be much obliged for any suggestions.
>
> Thanks in advance.
> --
>  Joe <joe@anime.com.pl>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 2: you can get off all lists at once with the unregister command
>     (send "unregister YourEmailAddressHere" to majordomo@postgresql.org)
>



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

Предыдущее
От: Rory Campbell-Lange
Дата:
Сообщение: Re: Cast: timestamp to integer
Следующее
От: Arjen van der Meijden
Дата:
Сообщение: Re: Cast: timestamp to integer