проблема с запросом SQL в DB2 - PullRequest
0 голосов
/ 05 июля 2010

Как мне написать запрос в DB2 для следующего:

Разница между текущей отметкой времени и полем отметки времени в дБ должна быть> = 4 часа И <= 24 часа </p>

Ответы [ 3 ]

2 голосов
/ 06 июля 2010

Вы на самом деле не предоставляете достаточно информации, чтобы ответить на вопрос (т. Е. Хотите ли вы данные только из прошлого, только в будущем и т. Д.), Но давайте предположим, что вам нужны данные, где столбец отметки времени («tscolumn»)) более 4 часов и менее 24 часов:

select * 
from   table t
where  t.tscolumn between current timestamp - 4 hours 
                      and current timestamp - 24 hours

Если мое предположение неверно, его довольно легко переписать в соответствии с вашими требованиями.

0 голосов
/ 31 декабря 2013
select * 
from   table t
where  timestampdiff(8,char(current timestamp - time_from_table)) between 4 and 24  

здесь отметка времени (8, - относится к часам, ниже приведены значения для различных аргументов.

Значение Описание

1   Fractions of a second
2   Seconds
4   Minutes
8   Hours
16  Days
32  Weeks
64  Months
128 Quarters
256 Years
0 голосов
/ 05 июля 2010

Попробуйте следовать

select * from tableName where 
                 date <=  DATEADD(Hour, -4, CURRENT_TIME) and 
                 date date >=  DATEADD(Hour, -24, CURRENT_TIME)
...