IF和ELSE将十进制值转换为字符串

时间:2011-03-27 02:20:19

标签: sql sql-server tsql

我正在使用MSSQL,需要编写一个查询来:

RESULT
------
abc

例如,如果我有这个表:

CREATE TABLE A (a int)

..并尝试使用:

SELECT IF a > 20 THEN 'abc' 
       ELSE 'def' 
       END 
  FROM A

但它不适用于SQL。怎么可能?

2 个答案:

答案 0 :(得分:8)

SELECT 
    CASE WHEN a > 20 THEN 'abc' 
         ELSE 'def' 
    END 
FROM A 

答案 1 :(得分:4)

select case when A.a > 20 then 'abc' else 'def' end 
  from A

----一周后加入----

Geez,抱歉没有格式化我的SQL,这只是一个快速的回复! :)

SELECT    CASE 
              WHEN A.a > 20 THEN 'abc' 
              ELSE 'def' 
          END AS derived 
FROM      A