gpt4 book ai didi

mysql - 按日期+其他字段对多个字段求和和分组

转载 作者:太空宇宙 更新时间:2023-11-03 12:32:09 24 4
gpt4 key购买 nike

我有一个包含 3 列的表格,如下所示。我想总结每个 TYPE 的成本(仅 0/1/2),然后按月份和年份(DATE 字段)对其进行分组,所有这些都使用 select 语句。

+------------+------+-------+
| DATE | TYPE | COST |
+------------+------+-------+
| Feb-1-2003 | 0 | 19.40 |
| Feb-5-2010 | 1 | 28.10 |
| Mar-3-2011 | 2 | 64.20 |
| Sep-8-2012 | 0 | 22.60 |
| Dec-6-2013 | 1 | 13.50 |
+------------+------+-------+

输出看起来像:

+----------+------------+------------+------------+
| PERIOD | TYPE0 | TYPE1 | TYPE2 |
+----------+------------+------------+------------+
| Jan 2003 | 123123.12 | 23432.12 | 9873245.12 |
| Feb 2003 | 123123.12 | 23432.12 | 9873245.12 |
| Mar 2003 | 123123.12 | 23432.12 | 9873245.12 |
etc...
+----------+------------+------------+------------+

有人可以帮助解决这个 select 语句吗?

最佳答案

Mysql 不是为数据透视查询设计的。最好用其他语言进行聚合。但这并不是说这是不可能的,尽管如此:

SELECT
CONCAT(MONTH(DATE), ' ', YEAR(DATE)) AS PERIOD,
SUM(IF(TYPE = 0, COST, 0)) AS TYPE0,
SUM(IF(TYPE = 1, COST, 0)) AS TYPE1,
SUM(IF(TYPE = 2, COST, 0)) AS TYPE2
FROM
t1
GROUP BY
PERIOD

关于mysql - 按日期+其他字段对多个字段求和和分组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14906807/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com