1

自从我不得不做一些更复杂的 SQL 以来已经有几年了,我有点生疏了。我需要选择 a max(count()),但我最近重新了解到您不能嵌套聚合函数。

我正在使用 WebSQL 并有一个名为“调用”的表。

Calls
  id INT
  targetId INT
  date DATETIME

我需要选择目标 id 的最大 COUNT。到目前为止,我有这个:

SELECT targetId, COUNT(targetId) AS NumberOfCalls FROM calls GROUP BY targetId

这是返回给我每个目标被调用的次数。我需要围绕这个动态构建一个报告,并且需要知道任何 targetIds 的最高值

我试过了,但它不起作用,并且没有向我返回任何数据:

SELECT MAX(x.count) FROM (SELECT COUNT(targetId) AS count FROM calls GROUP BY targetId)   x

如果有人可以帮助我,将不胜感激!

4

2 回答 2

2

如果您想了解所选 targetId 的最大 ID,请尝试以下操作:

SELECT targetId, MAX(targetId) AS MaxTargetId FROM calls GROUP BY targetId
于 2013-06-21T17:19:45.823 回答
1

听起来您正在寻找的是目标ID出现在表中的次数的计数,然后是其中的最大值。这将为您提供:

SELECT MAX(NumberOfCalls) FROM (SELECT COUNT(*) as NumberOfCalls FROM calls GROUP BY targetid)

于 2013-06-21T17:31:17.480 回答