qq_40714480 2023-10-09 15:46 采纳率: 66.7%
浏览 7
已结题

Mysql同一年的几个指标,如何给他合成一行显示

img

Mysql 如图,同一年的几个指标,如何给他合成一行显示,后面几个中文字段通过case when转换过来的

  • 写回答

3条回答 默认 最新

  • 专家-赤兔[在线] 优质创作者: 编程框架技术领域 2023-10-09 16:02
    关注

    引自强大而免费的微信小程序:皆我百晓生。


    可以使用MySQL的CASE WHEN语句将后面的中文字段转换为对应的值,然后使用GROUP BY和聚合函数将同一年的指标合并成一行。以下是一个示例SQL查询:

    SELECT
        year(order_date) AS 年份,
        MAX(CASE WHEN metric_name = '订单数量' THEN metric_value END) AS 订单数量,
        MAX(CASE WHEN metric_name = '销售额' THEN metric_value END) AS 销售额,
        MAX(CASE WHEN metric_name = '利润' THEN metric_value END) AS 利润
    FROM
        your_table
    GROUP BY
        year(order_date);
    

    假设你的数据表名为your_table,其中包括order_date(订单日期)、metric_name(指标名称)和metric_value(指标值)字段。以上查询将根据订单日期的年份对指标进行分组,并使用CASE WHEN语句将不同的指标名称转换为对应的值。最后,使用MAX函数将同一年的指标合并到一行中。

    请根据你的实际表结构和字段名称进行修改。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 10月17日
  • 已采纳回答 10月9日
  • 创建了问题 10月9日