Mysql 添加到查询以获取以前SQL结果的总和

Mysql 添加到查询以获取以前SQL结果的总和,mysql,sql,Mysql,Sql,我目前有一个查询,它提供了下面的结果集,我现在需要添加到这个查询中,以提供所有销售额底部的总数。我不知道该怎么做 当前查询: SELECT product, COUNT(OrderNumber) AS CountOf FROM orders WHERE STATUS = 'booking' AND Date(OrderDate) <= CURDATE() AND Date(OrderDate) > DATE_SUB(CURDATE()

我目前有一个查询,它提供了下面的结果集,我现在需要添加到这个查询中,以提供所有销售额底部的总数。我不知道该怎么做

当前查询:

SELECT
    product,
    COUNT(OrderNumber) AS CountOf
FROM
    orders
WHERE
    STATUS = 'booking' AND
    Date(OrderDate) <= CURDATE() AND 
    Date(OrderDate) > DATE_SUB(CURDATE(),INTERVAL 30 DAY)

GROUP BY
    product
ORDER BY CountOf DESC
所需结果集=

product| count
-----------------------
pd1  | 3
pd4  | 1
pd2  | 1
Total | 5

也许您可以添加一个联合,并选择一个总金额。大概是这样的:

SELECT
    product,
    COUNT(OrderNumber) AS CountOf
FROM
    orders
WHERE
    STATUS = 'booking' AND
    Date(OrderDate) <= CURDATE() AND 
    Date(OrderDate) > DATE_SUB(CURDATE(),INTERVAL 30 DAY)
GROUP BY
    product
UNION
SELECT 'Total', count(OrderNumber) AS CountOf
FROM   orders
WHERE
    STATUS = 'booking' AND
    Date(OrderDate) <= CURDATE() AND 
    Date(OrderDate) > DATE_SUB(CURDATE(),INTERVAL 30 DAY)
ORDER BY CountOf DESC;

尝试在同一个表上使用内部联接,由于每侧的列数不正确,该联接无法工作


最初的select有两个集合列,联合后的第二个select没有。

如果我知道那是什么,我会问这个问题吗?这有关系吗?现在你知道了。当我使用它时,它会出错,所以这不是解决方案。你是这样使用它的吗?发布您如何尝试使用汇总功能,以便我们能够帮助您。我得到了错误的用法或联合和订单?@LewisSmith谢谢,我已经编辑了我的帖子。现在将在顶部订购total,而不是在末尾订购。但我认为这可以作为一个答案。
SELECT
    product,
    COUNT(OrderNumber) AS CountOf
FROM
    orders
WHERE
    STATUS = 'booking' AND
    Date(OrderDate) <= CURDATE() AND 
    Date(OrderDate) > DATE_SUB(CURDATE(),INTERVAL 30 DAY)
GROUP BY
    product
UNION
SELECT 'Total', count(OrderNumber) AS CountOf
FROM   orders
WHERE
    STATUS = 'booking' AND
    Date(OrderDate) <= CURDATE() AND 
    Date(OrderDate) > DATE_SUB(CURDATE(),INTERVAL 30 DAY)
ORDER BY CountOf DESC;