回答
如果您有此表
表1:
Field1 Field2 Field3
---------------------------
1 1 1
NULL NULL NULL
2 2 NULL
1 1 1
然后
SELECT COUNT(*), COUNT(Field1), COUNT(Field2), COUNT(Field3)
FROM Table1
输出是:
COUNT(*) = 4; -- count all rows even null/duplicates
-- count only rows without null values on that field
COUNT(Field1) = COUNT(Field2) = 3
COUNT(Field3) = 2
我可以在所有字段都为空的情况下排成一行吗?微软在他们的文档中解释了这种情况吗? –
是的,只要所有字段都允许,你就可以将所有空值连续排列,这将是非常奇怪的,但是你可以不知道微软对文档的意图,这是你在玩这个函数后必须学习的东西。 –
你说的没错,我只是做了一个临时表,并且确信COUNT(*)包含了空行,在这种情况下考虑过了,我认为这种更实际的用法以及微软很可能试图将其归为空值的观点。例如,如果示例中的字段2和3不为空,并且按字段1分组。 –
根据您如何进行连接,您可以在一行中获得空值。确保你正在计数正确的领域或纠正你的连接。
- 1. 包含0值的SQL COUNT
- 2. 包含空值
- 3. 包含空值
- 4. Sql count包含无值的项目
- 5. COUNT(1) - COUNT(column_name)只返回空值的数量吗?
- 6. 分配值包含空格
- 7. 由包含一些空值
- 8. 包含数字和空值
- 9. django.db.utils.IntegrityError:列 “color_set_id” 包含空值
- 10. JSON是否包含空值
- 11. PostgresQL,只包含非空值
- 12. Crystal报表包含空值
- 13. 返回只包含空值的列,不包含空格
- 14. 包含.data()值的jQuery问题在其值中包含空格
- 15. 下拉框包含空的空格/值
- 16. WHERE语句不包含空值需要包含空值和失败的匹配
- 17. DOM元素可以包含一个包含空格的ID吗?
- 18. QComboBox :: count()在计数中包含分隔符吗?
- 19. 使用COUNT返回空值
- 20. 如何包含MySQL COUNT为0的行?
- 21. 调用.Count中包含一个IEnumerable
- 22. linq结果中包含count = 0
- 23. 包含在COUNT SQL查询NULL为0
- 24. 检查表是否包含值将不起作用(SELECT COUNT)
- 25. 如何在MySQL中的集合函数COUNT()中包含NULL值?
- 26. 在Apache Spark连接中包含空值
- 27. 如何在Join中包含空值?
- 28. ASP.NET MVC3该列不能包含空值
- 29. 用户名不能包含空值
- 30. FluentAssertions Should.Equal的集合,包含空值
如果你看一点点进一步上涨,他们“我已经使用了更好的表达式:_“COUNT(*)返回指定表中的行数而不删除重复项。它分别计算每行。这包括包含空值的行。“_ –
@TimSchmelter谢谢,我错过了,这说明得更清楚 –
我删除了我的评论,因为现在我重新读你的问题和你的评论,你真的问”为什么微软在文档中写下这样一个糟糕的解释“我不知道这个问题的答案 –