Mysql 在嵌套SQL中,如何按值对分组求和
我有以下SQLMysql 在嵌套SQL中,如何按值对分组求和,mysql,sql,Mysql,Sql,我有以下SQL SELECT MAX(o.tax) as tax_value FROM offer AS o WHERE o.status in (1) GROUP BY(o.offer_no) 假设上面的查询返回3条记录,但我想在另一个SQL中求这些记录的总和 比方说 SELECT SUM(SELECT MAX(o.tax) as tax_value FROM offer AS o WHERE o.status in (1) GROUP BY(o.offer_no)) as c
SELECT MAX(o.tax) as tax_value
FROM offer AS o
WHERE o.status in (1)
GROUP BY(o.offer_no)
假设上面的查询返回3条记录,但我想在另一个SQL中求这些记录的总和
比方说
SELECT SUM(SELECT MAX(o.tax) as tax_value
FROM offer AS o
WHERE o.status in (1)
GROUP BY(o.offer_no)) as created
但这给了我一个错误信息。我怎样才能解决这个问题。我想得到这些值的总和。您可以使用表表达式:
select sum(x.tax_value) as tax_value
from ( -- table expression here acts as a table
SELECT MAX(o.tax) as tax_value
FROM offer AS o
WHERE o.status in (1)
GROUP BY(o.offer_no)
) x
将其放入子查询:
SELECT SUM(tax_value)
FROM (
SELECT MAX(tax) AS tax_value
FROM offer
WHERE status = 1
GROUP BY offer_no) x
是的,现在可以用了。我还有一个问题,如何在一个SELECT语句中求和这些值,而不嵌套在SELECT中。你不能。查询中只能有一个聚合级别。