2012-10-12 61 views
1

我在Informix數據庫中使用解碼功能。我正在檢索一個整數數據類型的字段。如果我檢索的值是''那麼我需要將它設置爲空;如果不是,我設置相同的值。在Informix中解碼代碼修復

我想是這樣的:

decode(table1.field1,'',NULL,table1.field1) 

,但我收到以下錯誤

相應的類型必須在CASE表達式兼容。

我很困惑如何將值從數據庫中檢索 - 作爲null或0或-1或什麼的。我需要這樣做嗎?

decode(table1.field1,'',0,table1.field1) 

如何解決它

回答

3

這裏有一些混亂。由於table1.field1是一個INTEGER列,它不會包含空字符串。它將包含NULL或有效的INTEGER值;所以根本不需要更新。

你爲什麼認爲你可能會得到''?如果您的編程語言區分類型,您必須將INTEGER列選擇爲字符串變量。否則,空字符串可能是您的編程語言代表空值的可能性。

+0

我已經使用外部聯接,因爲我在選擇查詢中獲取「」值。不過,我已經用case語句解決了它。謝謝。 – srinath