2011-08-04 51 views
20

我有一個包含約30列的MySQL表。一列的大部分表格都有空值。我如何使用MySQL命令過濾出在表中具有值的項目?需要幫助從MySQL中選擇非空列值

這裏是我的嘗試:

SELECT * FROM `table` WHERE column IS NOT NULL 

這不過濾,因爲我有相當具有在虛空細胞NULL空單元格。

回答

42

也期待不等於空字符串的列''

SELECT * FROM `table` WHERE column IS NOT NULL AND column <> '' 

如果你只包含您認爲這些空的空白,使用TRIM()消除空白,並有可能場留下空字符串''

SELECT * FROM `table` WHERE column IS NOT NULL AND TRIM(column) <> '' 
+0

問題解決了:)謝謝。 – Presto

+3

這對我來說真的很好 - 特別是TRIM()版本。謝謝。 – Chris

7

甲替代的辦法,還可以處理在一列中的空白空間以及空:

SELECT * FROM `table` WHERE TRIM(column) > ''