在MYSQL中对子查询的计数执行求和

在MYSQL中对子查询的计数执行求和,mysql,sql,Mysql,Sql,我试图对从订单的子查询计数接收到的所有订单执行求和,但我收到一个错误,错误代码为:1242。子查询返回超过1行 查询: select sum((select count(orderNo) as count from order r group by r.status having r.status in ('Open','shipped In Progress','New'))); 只需按删除分组,然后使用WHERE select sum( (select count(orderNo)

我试图对从订单的子查询计数接收到的所有订单执行求和,但我收到一个错误,错误代码为:1242。子查询返回超过1行

查询:

select sum((select count(orderNo) as count from  order r group by r.status 
having r.status in ('Open','shipped In Progress','New')));

只需按删除
分组,然后使用
WHERE

select sum(  (select count(orderNo) as count 
              from  order r 
              WHERE r.status in ('Open','shipped In Progress','New')
             )
          );
实际上,您不需要
SUM
或子查询:

SELECT count(orderNo) as count 
FROM   order r 
WHERE r.status in ('Open','shipped In Progress','New')

只需按
删除
分组,然后使用
WHERE

select sum(  (select count(orderNo) as count 
              from  order r 
              WHERE r.status in ('Open','shipped In Progress','New')
             )
          );
实际上,您不需要
SUM
或子查询:

SELECT count(orderNo) as count 
FROM   order r 
WHERE r.status in ('Open','shipped In Progress','New')

所以我想出了一个适合我的方法

select sum(a.count) 
from(select count(o.order) as count from order o )a

所以我想出了一个适合我的方法

select sum(a.count) 
from(select count(o.order) as count from order o )a

这相当于从r订单中选择计数(r.orderNo),其中状态在…
,否?如果我错了,请纠正我,他正在尝试对子查询中的行计数求和,这相当于从r订单中选择计数(r.orderNo),其中状态在…,否?如果我错了,请纠正我,他试图对子查询中的行数求和,那么我的答案呢?突然你不需要检查状态了?因为正如我说的,你不需要子查询。那么我的答案呢?突然你不需要检查状态了?因为正如我说的,你不需要子查询。