2009-07-09 111 views
0

我有一个视图,我从中选择三列。在这三列中,其中一列包含操作系统版本。如何选择计算列

我想在检查操作系统版本的结果中创建一个额外的列。如果操作系统版本小于5.1,它应该返回'坏',如果它大于它应该返回'好'。

有关如何添加此额外列的任何想法?

回答

4

尝试......

Select 
    Col1, 
    Col2, 
    OS, 
    OSResult = Case When OS < 5.1 Then 'Bad' Else 'Good' End 
From 
    Table 
+0

你是第一个,+1。但是为最后一列添加一个别名 – colithium 2009-07-09 08:08:22

+1

它有一个别名... OSResult。您可以使用'='符号对列进行别名,它可以替代'as'。 – 2009-07-09 08:12:15

0

假设列不能为NULL:

SELECT ... 
     CASE WHEN OS_VERSION < '5.1' THEN 'BAD' ELSE 'GOOD' END AS IsVersionGood 
FROM ... 
0

选择OS_VERSION,情况下,当OS_VERSION < = 5.1那么 '坏' 的其他 '好' 结束 从...

希望这可以帮助。

2

你也可以将其添加为计算列于表定义,如果你想e.g

ALTER TABLE dbo.OS ADD 
    VersionOk AS (case when [OS]<(5.1) then 'bad' else 'good' end)