
MySQL数据库收支明细表数据报表
报表概述
本报表旨在展示MySQL数据库中收支明细表的数据,包括收入、支出、余额等信息,报表将按照时间顺序展示,并计算累计余额。
报表数据结构
以下为收支明细表的数据结构:
CREATE TABLEfinancial_records(idint(11) NOT NULL AUTO_INCREMENT,record_datedate NOT NULL,typeenum('income','expense') NOT NULL,amountdecimal(10,2) NOT NULL,descriptionvarchar(255) DEFAULT NULL, PRIMARY KEY (id)) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
id: 记录的唯一标识符。
record_date: 记录日期。
type: 收支类型,'income'表示收入,'expense'表示支出。
amount: 金额,正数表示收入,负数表示支出。
description: 记录的描述信息。
1. 按日期汇总
以下SQL查询将按日期汇总收入和支出,并计算累计余额。
select record_date, SUM(CASE WHEN type = 'income' THEN amount ELSE 0 END) AS total_income, SUM(CASE WHEN type = 'expense' THEN amount ELSE 0 END) AS total_expense, (SUM(CASE WHEN type = 'income' THEN amount ELSE 0 END) SUM(CASE WHEN type = 'expense' THEN amount ELSE 0 END)) AS balanceFROM financial_recordsGROUP BY record_dateORDER BY record_date;
2. 按类型汇总
以下SQL查询将按收支类型汇总收入和支出。
select type, SUM(amount) AS total_amountFROM financial_recordsGROUP BY type;
3. 按描述分类
以下SQL查询将按描述信息分类汇总收入和支出。
select description, SUM(amount) AS total_amountFROM financial_recordsGROUP BY descriptionORDER BY total_amount DESC;
4. 查询特定日期范围内的收支情况
以下SQL查询将展示指定日期范围内的收支情况。
select record_date, type, amount, (select SUM(CASE WHEN type = 'income' THEN amount ELSE 0 END) SUM(CASE WHEN type = 'expense' THEN amount ELSE 0 END) FROM financial_records WHERE record_date <= current_date()) AS cumulative_balanceFROM financial_recordsWHERE record_date BETWEEN '开始日期' AND '结束日期'ORDER BY record_date;
报表使用说明
替换上述SQL查询中的'开始日期' 和'结束日期' 为实际日期。
根据需要调整SQL查询,以获取更详细的报表信息。
SQL查询假设您已经有一个名为financial_records 的表,并且表结构如上所述,根据实际情况,您可能需要调整SQL查询以满足特定的报表需求。
本文地址:https://www.shjdjh.com/news/80485.html
免责声明:本站内容仅用于学习参考,信息和图片素材来源于互联网,如内容侵权与违规,请联系我们进行删除,我们将在三个工作日内处理。联系邮箱:cloudinto#qq.com(把#换成@)