2011-11-08 4 views
0

"戻り日付がNULLの場合(つまり、返されない場合は、現在の日付を使用して)列にISNULLとGETDATEを使用して現在のレンタル期間を計算する必要があります。" 現在、これはこれまで完成しているコードのスニペットです。レンタル期間で使用するISNULLとGETDATEステートメントを作成する必要があります。 IF文を使用する必要があるかどうか、または現在の構成に文を入れるべきかどうかはわかりません。ISNULLとGETDATEをDATEDIFFステートメントに実装する方法

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 

ありがとうございます。どんな助けもありがとう。

+0

これが宿題の場合は、「宿題」タグでタグ付けしてください –

答えて

2
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

ISNULLは、ソース列がNULLでない場合はその列を戻し、NULLの場合は代替値を戻します。

SELECT ISNULL(return_date, getdate()) ... 

return_dateがnullの場合、関数getdate()が呼び出されて適切な値が返されます。