Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Количество дней?  [new]
Askat
Member

Откуда:
Сообщений: 487
Привет всем!

Помогите пожалуйста как посчитать в sql server количество дней?

Допустим имеется таблица в ней такие поля: текущая дата (13.07.2012), контрольная дата (25.07.2012), срок истечения (?)

Необходимо условие:
если текущая дата больше контрольной даты, то срок истечения = определенному значению
иначе
срок истечения = 0


????
13 июл 12, 14:27    [12863252]     Ответить | Цитировать Сообщить модератору
 Re: Количество дней?  [new]
denis2710
Member

Откуда: Москва
Сообщений: 3384
Askat,
use datediff
13 июл 12, 14:31    [12863279]     Ответить | Цитировать Сообщить модератору
 Re: Количество дней?  [new]
trew
Member

Откуда: Москва
Сообщений: 2646
Askat,

select  CASE WHEN datediff(d, '20120701', getdate()) >0 
		THEN datediff(d, '20120701', getdate())
		ELSE 0 END as dd
13 июл 12, 14:35    [12863309]     Ответить | Цитировать Сообщить модератору
 Re: Количество дней?  [new]
Askat
Member

Откуда:
Сообщений: 487
denis2710,

Это уже использую но не правильно считает, но только показывает разность

ISNULL(ABS(DATEDIFF(day, instructions.translate_control, ISNULL(ISNULL(instructions.translate_end,instructions.correct_date),@date))), 0) AS exp_day_count,
13 июл 12, 14:40    [12863347]     Ответить | Цитировать Сообщить модератору
 Re: Количество дней?  [new]
Mnior
Member

Откуда: Кишинёв
Сообщений: 6724
ISNULL(ISNULL(A,B),C) -> Coalesce(A,B,C)
Coalesce
А зачем ABS ???

Askat
только показывает разность
DateAdd
13 июл 12, 19:43    [12865070]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить