2013-04-26 25 views
1

爲1或0基於如果列note爲空或不SQL得到VARCHAR列布爾值

列是varchar,我想從查詢結果給我想把我的結果我要的是列booleannote

SELECT id, product, note FROM myTABLE 

我累是什麼,

SELECT id, product, CASE WHEN ISNULL(note) THEN 0 ELSE 1 FROM myTable 

但我收到一封rror ...我相信有這個簡單的解決方案我錯過了,所以請幫助。謝謝。

回答

2

嘗試

SELECT id, product,CASE WHEN note IS NULL THEN 0 ELSE 1 END as SomeColumn 
FROM myTable 

檢查空白和空爲好,使用NULLIF

SELECT id, product, 
CASE WHEN NULLIF(note,'') IS NULL THEN 0 ELSE 1 END as SomeColumn 
FROM myTable 
+0

唉唉傻我忘記了'END',感謝簡單的修復,我會標記爲答案一次10分鐘到了。謝謝! – 2013-04-26 16:17:10

+1

還注意IS NULL,而不是ISNULL() – SQLMenace 2013-04-26 16:17:56

+0

是的,很好的捕獲。現在得到它的工作 – 2013-04-26 16:19:09