2011-03-27 41 views
1

我使用MSSQL,需要編寫一個查詢有:if和else把十進制值轉換爲字符串

RESULT 
------ 
abc 

舉例來說,如果我有這樣的表:

CREATE TABLE A (a int) 

..並嘗試使用:

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

但它不適用於SQL。這怎麼可能?

回答

8
SELECT 
    CASE WHEN a > 20 THEN 'abc' 
     ELSE 'def' 
    END 
FROM A 
4
select case when A.a > 20 then 'abc' else 'def' end 
    from A 

----添加了一個星期後----

吉茲,遺憾地沒有格式化我的SQL,這只是一個快速反應! :)

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