как найти разницу между 2 датами в DB2 - PullRequest
0 голосов
/ 02 июля 2010

В моей базе данных у меня есть поле TIMESTAMP. Теперь я хочу найти разницу между значением, хранящимся в этом поле, и текущим значением TIMESTAMP. Я хочу получить результат в днях.Как я могу получить его?

Примечание: я использую базу данных DB2

Ответы [ 4 ]

0 голосов
/ 16 апреля 2013

CURRENT_DATE возвращает текущую временную метку, затем ее можно использовать

DAYS (CURRENT_DATE) -DAYS (TIMESTAMP)

0 голосов
/ 02 июля 2010

Вы не говорите, какую версию DB2 вы используете.

В более старых версиях вы должны ВЫБРАТЬ по таблице, даже если вы не получаете никаких столбцов.

SELECT days(TIMESTAMP)-days(your_col)
FROM SYSIBM.SYSTABLES

Замените создателя и таблицу, для которой у вас есть полномочия SELECT.

0 голосов
/ 04 февраля 2011

Я повторю то, что ответил Гилберт.Он был прав, но я не думаю, что оригинальный автор понял идею.Например:

create table test ( mycolumn timestamp )
insert into test values (current timestamp)
select * from test
select days(current timestamp)-days(mycolumn) from test

Текущая временная метка - это специальный регистр, доступный для DB2.Дни - это функция по умолчанию, которая будет возвращать компонент количества дней для данной отметки времени, считая с 1 января года 1.

0 голосов
/ 02 июля 2010
days(TIMESTAMP)_-days(your_col)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...