2016-07-20 14 views
1

Um nur gefüllte Datensätze aus der Tabelle anzuzeigen.Wie wähle ich nur gefüllte Datensätze aus der Datenbank aus?

Hier ist meine Datenbank:

CREATE TABLE `category1` (
    `parent_id` int(100) NOT NULL, 
    `parent_name` varchar(100) NOT NULL, 
    `cat_name` varchar(100) NOT NULL, 
    `cat_status` varchar(100) NOT NULL 
) ENGINE=InnoDB DEFAULT CHARSET=latin1; 

Dumping Daten in db:

INSERT INTO `category1` (`parent_id`, `parent_name`, `cat_name`, `cat_status`) VALUES 
(1, 'Electronics', '', 'Active'), 
(2, '', 'Laptops', 'Active'), 
(3, '', 'Mobiles', 'Active'), 
(4, 'Mens', '', 'Active'), 
(5, '', 'Watches', 'Active'); 

hier Jetzt habe ich PARENT_NAME Feld wollen Anzeige sein, aber die Sache ist, wenn ich „wählen PARENT_NAME aus der Tabelle zu tun "Es zeigt mir auch die leeren Aufzeichnungen des Feldes. Grund, warum diese leer sind, weil zu einem Zeitpunkt nur parent_name oder cat_name gefüllt werden kann.

Antwort

1

Sie erhalten eine dem Zustand zu Ihrer Anfrage hinzufügen möchten:

select parent_name from category1 where parent_name != '' 

Sie in verschiedenen PARENT_NAME Werte interessiert sein könnten. Verwenden Sie in diesem Fall die Anweisung distinct in Ihrer Abfrage:

select distinct parent_name from category1 where parent_name != '' 
0
SELECT parent_name FROM category1 WHERE parent_name != '' 

wird alle Zeilen auswählen, in denen parent_name nicht leer ist.

0

können Sie dies query

SELECT parent_name FROM category1 WHERE (parent_name != '' AND parent_name IS NOT NULL) 

Die IS NOT NULL Bedingung für eine non-NULL value zu testen in SQL verwendet verwenden. Es wird TRUE zurückgegeben, wenn ein Nicht-NULL-Wert gefunden wird. Andernfalls wird FALSE zurückgegeben.

0

dies keine leeren Werte garantieren

SELECT parent_name FROM table WHERE parent_name != '' 
Verwandte Themen