Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / IBM DB2, WebSphere, IMS, U2, etc Новый топик    Ответить
 DateDiff  [new]
Julienovich
Guest
Скажите пожалуйста,

есть ли в DB2 функция, похожая на DateDiff в MSSQL?

Нужно сравнить две даты и отобрать записи, у которых эта разница больше двух месяцев.

Спасибо!
2 окт 07, 11:58    [4742648]     Ответить | Цитировать Сообщить модератору
 Re: DateDiff  [new]
Alexey Popov
Member

Откуда: Волгоград
Сообщений: 400
Можно примерно так:
WITH Q1(ID, DATE1, DATE2)
AS (
VALUES(1, DATE('2006-01-03'), DATE('2006-06-01')), (2, DATE('2006-06-01'), DATE('2006-07-05')))

SELECT *
FROM Q1
WHERE DATE2 - 2 MONTHS > DATE1
2 окт 07, 13:00    [4743143]     Ответить | Цитировать Сообщить модератору
 Re: DateDiff  [new]
Julienovich
Guest
Насколько же отличается от MS SQL

А как отобрать записи, у которых разница между значениями одного столбца больше двух? Если ориентироваться только на DATE1?
2 окт 07, 14:01    [4743751]     Ответить | Цитировать Сообщить модератору
 Re: DateDiff  [new]
Alexey Popov
Member

Откуда: Волгоград
Сообщений: 400
Допустим, так:
WITH Q1(ID, DATE1, DATE2)
AS (
VALUES(1, DATE('2006-01-03'), DATE('2006-06-01')), (2, DATE('2006-06-01'), DATE('2006-07-05')),
  (3, DATE('2007-01-02'), DATE('2007-03-17')))

SELECT Q1.ID, Q1.DATE1, Q2.ID AS ID_1, Q2.DATE1 AS DATE1_1
FROM Q1
  INNER JOIN Q1 AS Q2 ON (Q1.DATE1 - 2 MONTHS > Q2.DATE1)
2 окт 07, 14:34    [4744032]     Ответить | Цитировать Сообщить модератору
 Re: DateDiff  [new]
Julienovich
Guest
Отлично! Спасибо!
2 окт 07, 14:41    [4744088]     Ответить | Цитировать Сообщить модератору
Все форумы / IBM DB2, WebSphere, IMS, U2, etc Ответить