gpt4 book ai didi

sql - 什么时候在计数中使用列名而不是 * ?

转载 作者:行者123 更新时间:2023-12-04 21:12:48 25 4
gpt4 key购买 nike

我明白你为什么使用 COUNT(*)COUNT(DISTINCT col) ,但在哪些情况下您会简单地使用 COUNT(col) 。不会COUNT(col)返回与 COUNT(*) 相同的结果?

SELECT COUNT(CustomerID) AS OrdersFromCustomerID7 FROM Orders
WHERE CustomerID=7;

SELECT COUNT(*) AS OrdersFromCustomerID7 FROM Orders
WHERE CustomerID=7;

两者都会导致

来自客户 ID7 的订单4

在这所W3学校example .

最佳答案

当您使用COUNT(Colomn)时,它不会计算空值

COUNT(*)相反,无论是否为空,都会单独计算每一行

让我们来看这个案例:

ID   |  NAME
1 John
2 NULL
3 Jonathan

SELECT COUNT(*) FROM Table -- return 3

SELECT COUNT(NAME) FROM Table -- return 2

关于sql - 什么时候在计数中使用列名而不是 * ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35890656/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com