是否可以在单个查询中执行此操作?
问题描述:
答
SELECT
t2.`month`,
SUM(t1.sales) as sales
FROM
table2 AS t2
LEFT JOIN table1 AS t1 ON t2.`month` = DATE_FORMAT(t1.date, "%b")
GROUP BY t2.`month`
ORDER BY sales desc
希望这可以帮助你。
但为此,您必须在表格中进行一些更改您的月份名称应仅为3个字符,因为我们按月份名称加入表名,正如您在表格中看到的那样添加日期,所以我们将其转换为其他格式,3个字符使用DATE_FORMAT(t1.date, "%b")
的名字,所以这对你
要去工作在您不想使用第二个表试试这个
SELECT DATE_FORMAT(t1.date, "%b") AS MONTH, SUM(t1.sales) FROM table1 AS t1 GROUP BY t1.date
答
SELECT s.Month, SUM(f.Sales)
FROM firstTable f, secondTable s
GROUP BY MONTH (Date)
应该为你工作。
+0
感谢您的回应,但它没有显示我想要的输出。它仅汇总Sales列中的所有值并重复所有月份。 – Newbie
是的情况下,这是可能的。使用'LEFT JOIN' – Faytraneozter
@Faytraneozter不需要连接... –
但需要输出吗?我不认为这是可能的。请看看销售情况? –