0
我正在使用SQL Server MS。 我无法写这个剧本:SQL - 计算列使用ISNULL,DATEDIFF和GETDATE
CREATE VIEW rental_view
AS SELECT
m.movie_id, movie_name, co.copy_id, f.format_id, format_name, cu.customer_id,
(first_name + ' ' + surname) AS customer_name, rental_id, rental_date,
return_date, ISNULL(return_date, DATEDIFF(dd, rental_date, GETDATE()))
AS rental_duration
FROM movie AS m INNER JOIN copy AS co
ON m.movie_id = co.movie_id
INNER JOIN format AS f
ON co.format_id = f.format_id
INNER JOIN rental
ON co.copy_id = rental.copy_id
INNER JOIN customer AS cu
ON rental.customer_id = cu.customer_id
的目标,这是建立在选择指定的列的视图。指定的最后一列是一个计算列,它应该计算出租超出其出租日期的天数(仅当return_date值为NULL时)并将其显示为INT。 据我所知,我在正确的轨道上,但显然不是,因为当执行该列中显示的值是DATATIME数据类型值,并没有任何意义。
感谢任何帮助,我可以得到。
我不能够感谢你,完美的作品:) – Owen