Как внедрить ISNULL и GETDATE в оператор DATEDIFF - PullRequest
0 голосов
/ 08 ноября 2011

"столбец должен использовать ISNULL и GETDATE для расчета текущей продолжительности аренды, если дата возврата равна NULL. (Т.е. если даты возврата нет, используйте текущую дату.)" В настоящее время это фрагмент кода, который у меня есть, поэтомудалеко завершено, мне нужно создать оператор ISNULL и GETDATE для использования с продолжительностью аренды.я не уверен, нужно ли мне использовать оператор IF или куда поместить этот оператор в моей текущей конфигурации.

SELECT mo.Movie_ID                     
 , co.copy_id                      
 , mo.Movie_Name
 , fo.format_name                  
 , c.customer_id
 , rental_ID
 , DATEDIFF (day, rental_date, return_date) AS rental_duration
 , c.first_name + ' ' + c.last_name AS customer_name

Заранее спасибо.любая помощь будет оценена.

Ответы [ 2 ]

2 голосов
/ 08 ноября 2011
SELECT mo.Movie_ID                     
 , co.copy_id                      
 , mo.Movie_Name
 , fo.format_name                  
 , c.customer_id
 , rental_ID
 , DATEDIFF (day, rental_date, ISNULL(return_date,GETDATE())) AS rental_duration
 , c.first_name + ' ' + c.last_name AS customer_name

Это должно сделать это.

0 голосов
/ 08 ноября 2011

ISNULL является встроенным оператором, который, когда исходный столбец не равен NULL, возвращает этот столбец, а когда он имеет значение NULL, возвращает альтернативное значение.) вызывается для возврата правильного значения.

...