小编use*_*994的帖子

如何在sql中显示一周一周

我需要在一周内显示GP总和的两个计算列,在前一个列中显示另一列

我认为我的方式是正确的,但我错过了一些东西

我想让我的结果像这样::

| WEEK |日本|澳大利亚| GB |

| PREV | 22 | 32 | 23 |

| CUR | 12 | 15 | 12 |

我的sql是这个我相信我可能需要透视数据

SELECT 
  (SUM(`GP`), `gptw`) 
FROM
  (SELECT 
    `GP`,
    `Country` 
  FROM
    `Finance` 
  WHERE DATE >= CURDATE() - INTERVAL DAYOFWEEK(CURDATE()) + 6 DAY 
    AND DATE < CURDATE() - INTERVAL DAYOFWEEK(CURDATE()) - 1 DAY 
  GROUP BY `Country`) AS lastweeek 
  INNER JOIN 
    (SELECT 
      SUM(`GP`) AS `gptw`,
      `Country` 
    FROM
      Finance 
    WHERE DATEDIFF(NOW(), `date`) < 4 
    GROUP BY `Country`) AS `thisweek` 
Run Code Online (Sandbox Code Playgroud)

mysql datetime aggregate time-series

0
推荐指数
1
解决办法
3258
查看次数

标签 统计

aggregate ×1

datetime ×1

mysql ×1

time-series ×1