mysql - 像 jan=Jan 和 feb =jan+feb 使用 mysql 和 March 的月份总和 = jan+feb+march
问题描述
我的查询是我有名称列、金额列、月份列。
例如,如果名字是 Sandeep,他在 Jan 月份的金额为 90,如下所示
Name Amount month new column
Sandeep 90 Jan Jan(amount)=90
Sandeep 100 Feb. (jan+feb)amount=190
Sandeep 120 March (jan+feb+march)=310
Mandeep 70 April (0+0+0+April)=70
Mandeep 20 May (0+0+0+70+20)=90
我想要使用 MySQL 查询的具有与上述相同格式的新列
解决方案
我会建议一个完整的其他方法。
将您的每月数据存储在每个名称的一行中。使您的数据成为包含年份和月份的整数
CREATE TABLE t
(
id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(100),
yearmonth INT,
amount INT
);
INSERT INTO t (name, yearmonth, amount)
VALUES ('Sandeep', 202101, 90),
('Sandeep', 202102, 100),
('Sandeep', 202103, 120),
('Mandeep', 202104, 70),
('Mandeep', 202105, 20);
然后您可以轻松请求所需的所有数据例如:
SELECT name, SUM(amount)
FROM t
WHERE name = 'Sandeep' AND yearmonth BETWEEN 202101 AND 202103
我为你创造了一个小小提琴。
推荐阅读
- apache-spark - sparkstreamingjob 中的错误导致连接丢失
- wkwebview - Cordova WebView 与 InAppBrowser
- microcontroller - 如何使用 PIC18F4550 的端口作为输入和输出?
- xml - 我会用以下兄弟做一个递归模板
- bash - 如何临时加载单个 shell 命令的 env 文件,作为 bash util/function/alias?
- python - 在python中使用igraph创建具有特定顶点之间距离的网络
- python - Python,Chrome - Xpath 无法找到元素
- dataframe - 为什么我在字节中得到列结果以及如何在 PANDAS、python 中将它们转换为整数?
- java - JPro Maven 构建失败并出现 UncheckedExecutionException
- powershell - Get-ADComputer,一些属性未显示在格式表中