【问题标题】:MySQL Order Previous 6 Months In ReverseMySQL 逆序排列前 6 个月
【发布时间】:2020-05-01 03:04:50
【问题描述】:

我有以下 MySQL 查询,可以正确输出月份和值的总和,但我想以反向滚动格式订购前 6 个月数据的日期,因此它将是 2 月、1 月、12 月、11 月、10 月、9 月。但是这个范围每个月都会改变,所以不确定field() 函数是否适用于ORDER BY

SELECT month(c.date) AS month_num, monthname(c.date) AS month, SUM(value) AS total
FROM commissions c
WHERE c.date BETWEEN CURDATE() - INTERVAL 7 MONTH AND CURDATE()
GROUP BY month(c.date)

结果:

| month_num | month     | total   | 
|-----------|-----------|---------|
| 1         | January   | 45198   | 
| 2         | February  | 95661   | 
| 9         | September | 8373    |
| 10        | October   | 5356    |
| 11        | November  | 4745    |
| 12        | December  | 4830    |

需要这为 2 月、1 月、12 月、11 月、10 月、9 月的反向滚动格式。想法?

【问题讨论】:

    标签: mysql sql-order-by


    【解决方案1】:

    我认为这会有所帮助

    SELECT month(c.date) AS month_num, monthname(c.date) AS month, SUM(value) AS 
    total
    FROM commissions c
    WHERE c.date BETWEEN CURDATE() - INTERVAL 7 MONTH AND CURDATE()
    GROUP BY month(c.date)
    ORDER BY c.date DESC
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-11-22
      • 1970-01-01
      • 2023-03-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-01-25
      • 1970-01-01
      相关资源
      最近更新 更多