给定Where/Having参数的SQL计数总计

给定Where/Having参数的SQL计数总计,sql,count,Sql,Count,我得到了下面的sql,它根据actorID计算有多少参与者拥有超过1个角色 SELECT COUNT (actorID) from ROLE GROUP BY actorID HAVING COUNT (actorID) > 3; 它给了我以下正确的结果 COUNT(ACTORID) 4 5 4 4 但是我希望它能给我总共4个(4个演员有3个以上的电影角色)试着用拥有代替WHERE你必须分两步来完成 首先,像你所

我得到了下面的sql,它根据actorID计算有多少参与者拥有超过1个角色

SELECT COUNT (actorID) 
from ROLE
GROUP BY actorID
HAVING COUNT (actorID) > 3;
它给了我以下正确的结果

COUNT(ACTORID)
         4
         5
         4
         4

但是我希望它能给我总共4个(4个演员有3个以上的电影角色)

试着用拥有代替WHERE

你必须分两步来完成

首先,像你所做的那样,确定3部以上电影的演员。然后在单独的查询中计算这些记录

SELECT
  COUNT(*)
FROM
(
  SELECT   actorID
  FROM     ROLE
  GROUP BY actorID
  HAVING   COUNT(*) > 3
)
  AS actors

@LillyPop-如果你纠正你的答案,人们会删除他们的-1。但就目前情况而言,你的答案意味着尝试一些语法上不可能的事情。因为这是一个完全不正确的答案,所以得到-1表示这一点。但是如果你改变你的答案,使之至少是有效的,那么你不会得到-1。谢谢!它不喜欢最后的演员,但另一个成功了!完美的