我有一个MySQL表,大约有30列。一列的大部分表都有空值。如何使用MySQL命令过滤掉表中具有值的项目?
这是我的尝试:
SELECT * FROM `table` WHERE column IS NOT NULL
这不会过滤,因为我有空单元格而不是空单元格中有NULL
。
答案 0 :(得分:51)
同时查找不等于空字符串''
SELECT * FROM `table` WHERE column IS NOT NULL AND column <> ''
如果您的字段只包含您认为为空的空格,请使用TRIM()
消除空格,并可能留下空字符串''
SELECT * FROM `table` WHERE column IS NOT NULL AND TRIM(column) <> ''
答案 1 :(得分:8)
另一种方法,它也处理列中的空格以及null:
SELECT * FROM `table` WHERE TRIM(column) > ''