两种使用Count的方法,它们是等价的吗?

nul*_*ull 2 sql count

是

SELECT COUNT(a.attr)
FROM TABLE a
Run Code Online (Sandbox Code Playgroud)

相当于

SELECT B
FROM (SELECT COUNT(a.attr) as B
      FROM TABLE a)
Run Code Online (Sandbox Code Playgroud)

我猜不会,但我不确定.

我也假设答案对于像min,max,avg这样的函数是一样的,对吗?

编辑:

这完全出于好奇,我还是新手.下面的计数和上面的计数返回的值是否有差异?

SELECT B, C
FROM (SELECT COUNT(a.attr) as B, a.C
      FROM TABLE a
      GROUP BY c)
Run Code Online (Sandbox Code Playgroud)

再次编辑:我研究过,经验教训:当我尝试了解这些事情时,我应该保持清醒.

Dan*_*rth 6

从技术上讲,它们不一样,第一个是简单的选择,第二个是带有子选择的选择.
但是每个理智的优化器都会为它们生成相同的执行计划.