2011-08-04 11 views
20

Ho una tabella MySQL che ha circa 30 colonne. Una colonna ha valori vuoti per la maggior parte della tabella. Come posso usare un comando MySQL per filtrare gli elementi che hanno valori nella tabella?Ho bisogno di aiuto per selezionare valori di colonna non vuoti da MySQL

Ecco il mio tentativo:

SELECT * FROM `table` WHERE column IS NOT NULL 

Questo non filtrare perché ho le celle vuote, piuttosto che avere NULL nella cella vuoto.

risposta

42

Anche cercare le colonne non uguale alla stringa vuota ''

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

Se avete i campi che contengono solo spazi bianchi che si considera vuoto, utilizzare TRIM() per eliminare gli spazi, e potenzialmente lasciare la stringa vuota ''

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

Problema risolto :) Grazie. – Presto

+3

Questo ha funzionato molto bene per me, specialmente la versione TRIM(). Grazie. – Chris

7

un approccio alternativo che gestisce anche gli spazi vuoti in una colonna così come nullo:

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