【发布时间】:2020-03-23 02:58:32
【问题描述】:
我有下表,并想了解每月总交易量的每月演变 (%)。我研究了LAG函数,但不是很了解。
我需要这个查询的返回是这样的(期望的输出):
MONTH | TOTAL TRANSACTIONS | % EVOLUTION
----------------------------------------
09 | 45.561 | 0%
10 | 48.598 | 6.66%
更新
% EVOLUTION = ((当前值 - 先前值) / 先前值) * 100
这是我用来计算从一个月到上个月的交易数量演变的公式。 也就是说,需要一列包含上个月的总计。
DDL
CREATE TABLE IF NOT EXISTS `campanha` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`ano_mes` date DEFAULT NULL,
`nome` varchar(200) COLLATE utf8_unicode_ci NOT NULL,
`cpf` varchar(100) COLLATE utf8_unicode_ci NOT NULL,
`conta` varchar(100) COLLATE utf8_unicode_ci NOT NULL,
`valor` float(10,2) UNSIGNED ZEROFILL NOT NULL,
`transacoes` int(255) DEFAULT NULL,
PRIMARY KEY (`id`)
)
谁能帮帮我?
MySQL 版本:5.7.23 - MySQL 社区服务器
【问题讨论】:
-
有人请吗?
-
你的Mysql版本不支持LAG功能。发布示例数据和该数据的预期输出以澄清。
-
您提供了示例结构和您想要的内容,但也有助于编辑原始帖子并显示一些示例数据,显示进化和总交易的积累。你进化百分比的基础是什么。请在您的编辑过程中澄清这一点。
-
好的,这个细节真的错过了,抱歉。发布更新
标签: mysql aggregate-functions window-functions mysql-5.7