Re: bigint and unix time

Поиск
Список
Период
Сортировка
От Janiv Ratson
Тема Re: bigint and unix time
Дата
Msg-id 25B9D8D6D61CDB4CAD5D742B947F5C1A0493CBC8@ES-EX2010A-IL.essencesecurity.com
обсуждение исходный текст
Ответ на Re: bigint and unix time  (Adrian Klaver <adrian.klaver@gmail.com>)
Список pgsql-sql
Hi Adrain and thank you,
Trac 0.12 uses microseconds as time value.
What do you suggest?

Thanks,
Janiv.

-----Original Message-----
From: Adrian Klaver [mailto:adrian.klaver@gmail.com]
Sent: Monday, August 15, 2011 17:14
To: Janiv Ratson
Cc: pgsql-sql@postgresql.org
Subject: Re: [SQL] bigint and unix time

On Sunday, August 14, 2011 11:23:08 pm Janiv Ratson wrote:
> Hi and thanks,
> If my 'time' column is being saved as bigint: 1287323899000000.
> How do I write a query to check if the 'time' field is greater than now -
> 30 (past 30 days)?

So what you want is not what values are greater than some point 30 days ago
which is what your previous query asked and answered, but the values between a
point 30 days ago and today.  The easiest way is to use BETWEEN:

test(5432)aklaver=>\d big_int_test
Table "public.big_int_test"Column |  Type   | Modifiers
--------+---------+-----------bint   | bigint  | rint   | integer |

test(5432)aklaver=>SELECT * from big_int_test ;      bint       |    rint
------------------+------------1287323899000000 | 1310799600

test(5432)aklaver=>SELECT bint
FROM big_int_test
WHERE bint
BETWEEN extract(epoch from (date 'now' - integer '30'))
ANDextract(epoch from (date 'now'));
bint
------
(0 rows)


That being said, if your time values are the order of magnitude shown they will
not meet the criteria above. Is the time value supposed to be seconds?

>
> Thanks,
> Janiv,.


--
Adrian Klaver
adrian.klaver@gmail.com




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

Предыдущее
От: adam_pgsql
Дата:
Сообщение: Re: which is better: using OR clauses or UNION?
Следующее
От: Janiv Ratson
Дата:
Сообщение: Re: bigint and unix time