2012-04-05 112 views
3

我一直在使用IFNULL函數以零NULL值轉換在我的SQL查詢,像這種「項目無法在集合中找到」精細。我正在嘗試使用IFNULL函數將NULL值轉換爲字符串「N/A」,但我不斷收到錯誤消息:「無法在與請求的名稱或序號對應的集合中找到項目」:MySQL的IFNULL「N/A」產生錯誤

SELECT IFNULL(mem.address2,'N/A') FROM members... 

SELECT COALESCE(NULLIF(mem.address2, ''), 'N/A') FROM members... 

但仍然拋出了同樣的錯誤:

我甚至使用COALESCE只是櫃面這是一個空字符串,而不是一個NULL嘗試。

任何想法?

+1

mem.address2是什麼類型的? – Heinrich 2012-04-05 13:16:29

+0

它是VARCHAR 100 – TheCarver 2012-04-05 13:17:18

+0

成員是否有別名mem?如果不;你不能在IFNULL中使用它,使用'IFNULL(members.address2)' – 2012-04-05 13:21:37

回答

6

您的查詢很好,但您的代碼可能正在查找列名?試試別名:

SELECT IFNULL(mem.address2,'N/A') AS address2 FROM members mem ... 
+0

謝謝soooo多。這讓我瘋狂:) – TheCarver 2012-04-05 13:21:37