使用计算列创建视图

时间:2013-09-08 22:20:17

标签: sql-server

好的,

所以我有一个包含各种列和大约40条记录的表,我需要做的是创建一个只显示3列的视图,然后根据其他列的结果计算新列。

列如下,JobID,SDate& FDate(开始日期和结束日期),我需要的是一个在此视图中称为成绩的新列,如果开始日期和完成日期与'A +'相同,如果花费超过一天则为'A',如果超过两天然后'B',Else'C'。

最好的方法是什么,我对SQL很新,而且我的经验有点受限。

我正在使用SQL Server Management Studio R2。 是的,它必须是一个观点,因为这是给我的任务。

提前致谢!

1 个答案:

答案 0 :(得分:0)

您需要使用CASE

SELECT JobID, SDate, FDate, CASE WHEN SDate = FDate THEN 'A+' WHEN DATEADD(d, 1, SDate) = FDate THEN 'A' WHEN DATEADD(d, 2, SDate) = FDate THEN 'B' ELSE 'C' END AS Grades
FROM ...