gpt4 book ai didi

mysql - 按月分组并添加多列

转载 作者:行者123 更新时间:2023-11-29 05:30:40 27 4
gpt4 key购买 nike

您好,我有一个表,用于存储反馈和评分(1 到 5 之间)

我什至不知道这是否可以用 SQL 完成。

我想做的是按月分组并将所有 Q1、Q2、Q3 和 Q4 加到一列中。在另一列中有该分组月份的记录量。

然后我可以使用 PHP 计算出那几个月的平均汇率。

  unixStamp      |  Q1   |   Q2   |   Q3    |   Q4
-----------------------------------------------------
1362149504 | 5 | 4 | 3 | 5
1362136774 | 5 | 5 | 2 | 5
.......... | ... | .... | .... | ....

这是我想要的成就。

  Mnth           |  score  |   count  | 
---------------------------------------
1 | 192 | 20 |
2 | 365 | 40 |
.......... | ... | .... |

最佳答案

您可以使用CROSS JOIN 对数据进行反透视以获得结果:

SELECT Mnth,
sum(data) score,
count(data) `count`
FROM
(
SELECT MONTH(FROM_UNIXTIME(unixStamp)) Mnth,
CASE q.col
WHEN 'Q1' THEN Q1
WHEN 'Q2' THEN Q2
WHEN 'Q3' THEN Q3
WHEN 'Q4' THEN Q4
END AS DATA
FROM yourtable t
CROSS JOIN
(
SELECT 'Q1' AS col
UNION ALL SELECT 'Q2'
UNION ALL SELECT 'Q3'
UNION ALL SELECT 'Q4'
) q
) s
group by Mnth

参见 SQL Fiddle with Demo

关于mysql - 按月分组并添加多列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15162479/

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