2017-10-11 12 views

Répondre

1
select count(name) from Table1 where email is null 

ou si vous avez besoin de compter le nombre de noms distincts:

select count(distinct name) from Table1 where email is null 
1

pour compter combien de personnes ne disposent pas d'un e-mail, vous n'avez pas besoin d'une clause group by - vous essayez juste d'obtenir un réponse unique:

SELECT COUNT(*) 
FROM table1 
WHERE email IS NULL 
1

COUNT() ignorera NULL champs. Le libellé de votre question indique également que vous ne voulez que le nombre total de personnes sans e-mail, donc le GROUP BY ne semble pas nécessaire.

Peut-être est ce que vous cherchez:

Select Count(*) 
From  Table1 
Where Email Is Null; 
0
SELECT 
count(name) 
FROM Table1 
where email is null 
+2

Je ne pense pas que cela répond à la question. – Spongman

1

Si ce que vous voulez est un champ qui a 1 ou 0 lorsqu'il n'y a pas e-mail, vous êtes proche.

SELECT Name, Email, NoEmail = CASE WHEN Email IS NULL OR Email = '' THEN 1 ELSE 0 END 
FROM Table1; 

Alternativement il suffit de compter combien QUAND Email est NULL.

SELECT COUNT(*) 
FROM Table1 
WHERE Email IS NULL;