web-dev-qa-db-fra.com

SQL sélectionne des lignes distinctes et ignore la ligne si elle est vide

J'utilise une requête SQL pour récupérer les lignes de la table. Je veux sélectionner les lignes uniquement avec des valeurs distinctes et si aucune valeur n'est entrée pour une ligne, cette ligne ne devrait pas être là.

SELECT DISTINCT meta_value FROM `wp_postmeta` WHERE meta_key = "aaa";

C’est la requête que j’utilise, je reçois les lignes distinctes par cette requête, mais aussi la ligne vide.

16
user930026

Solution simple:

SELECT DISTINCT meta_value 
FROM `wp_postmeta` 
WHERE meta_key = "aaa" AND meta_value != "";
22
mattmanser

Essayez cette requête avec IS NOT NULL 

SELECT DISTINCT meta_value
FROM `wp_postmeta`
WHERE meta_key = "aaa"
AND meta_value IS NOT NULL ;
17
Query Master

J'utiliserais 

where meta_key = "aaa"
AND (meta_value IS NOT NULL or meta_value != "");

mais c'est le moteur que vous utilisez et le plus important - la façon dont vous insérez des valeurs vides . NULL <> 0 <> ''

3
ninjabber
SELECT DISTINCT meta_value
FROM `wp_postmeta`
WHERE meta_key = "aaa"
AND meta_value != "";
1
Shefali Aggarwal

Dans cette requête, différentes valeurs sont affichées. Si une colonne contient des valeurs NULL, elles sont également supprimées.

"select distinct color from tbl_product where color is not null

J'espère que ce code est utile pour tous.

0
Nitika Chopra