COUNT(*) Inclut les Valeurs Null?
MSDN états de documentation:
COUNT(*) renvoie le nombre d'éléments dans un groupe. Cela comprend la valeur NULL
les valeurs et les doublons.
Comment pouvez-vous avoir une valeur null dans un groupe? Quelqu'un peut-il expliquer le point qu'ils essaient de faire?
Si vous regardez d'un peu plus haut qu'ils ont utilisé la meilleure formulation: ", COUNT(*) retourne le nombre de lignes dans une table spécifique, sans se débarrasser des doublons. Il compte chaque ligne séparément. Cela comprend les lignes qui contiennent des valeurs null."
Merci, j'ai manqué. Que les états de choses beaucoup plus clairement.
J'ai supprimé mes commentaires, parce que maintenant que j'ai re-lu votre question et de votre commentaire, vous êtes vraiment vous demander "Pourquoi Microsoft a écrire une telle mauvaise explication dans la documentation". Je ne connais pas la réponse à cette question.
Merci, j'ai manqué. Que les états de choses beaucoup plus clairement.
J'ai supprimé mes commentaires, parce que maintenant que j'ai re-lu votre question et de votre commentaire, vous êtes vraiment vous demander "Pourquoi Microsoft a écrire une telle mauvaise explication dans la documentation". Je ne connais pas la réponse à cette question.
OriginalL'auteur Derrick Moeller | 2016-11-18
Vous devez vous connecter pour publier un commentaire.
Si vous avez ce tableau
Table1:
Puis
De Sortie Est:
Oui, vous pouvez avoir toutes les valeurs null dans une rangée, tant tous les champs de l'autoriser. Serait très bizarre, mais vous pouvez. Pas sûr au sujet de Microsoft à l'intention de la documentation. C'est quelque chose que vous avez à apprendre après avoir joué avec la fonction. J'ai le même confusion dès le début.
Vous avez tout à fait raison, je viens de faire une table temp et bien sûr, COUNT(*) inclus le nul de la ligne. Avoir pensé dans ce contexte, je pense que le plus pratique l'utilisation de ce et le point de Microsoft est probablement essayer de faire est de regroupement par une valeur null. Par exemple, si le Champ 2 et 3 dans votre exemple n'était pas nul et vous regroupées par Domaine 1.
OriginalL'auteur Juan Carlos Oropeza
Vous pouvez avoir une valeur Null dans une rangée selon la façon dont vous faites vos jointures. Assurez-vous de compter le champ de droite ou de correction de vos jointures.
OriginalL'auteur ACon