使用python每日根据mysql数据库内容形成表格报表,请给出样例代码
时间: 2024-03-02 20:52:20 浏览: 93
好的,以下是一个使用Python每日根据MySQL数据库内容形成表格报表的样例代码:
```python
import pandas as pd
import mysql.connector
import datetime
# 连接到MySQL数据库并获取数据
conn = mysql.connector.connect(user='root', password='password', host='localhost', database='example_db')
cursor = conn.cursor()
# 获取当天的日期
today = datetime.date.today()
# 获取昨天的日期
yesterday = today - datetime.timedelta(days=1)
# 获取前七天的日期列表
days = pd.date_range(end=yesterday, periods=7)
data = []
# 循环遍历前七天的日期列表,并获取数据
for day in days:
query = "SELECT * FROM table WHERE date='%s'" % day
cursor.execute(query)
data.append(cursor.fetchall())
# 将数据转换为pandas的DataFrame格式
df = pd.DataFrame(data, columns=['date', 'value'])
# 使用pandas中的groupby()函数对数据进行分组,并计算每天的总值和平均值
grouped = df.groupby('date')['value'].agg(['sum', 'mean'])
# 将数据保存为Excel文件
grouped.to_excel('daily_report.xlsx', sheet_name='Sheet1')
```
以上代码是一个简单的示例,您可以根据您的具体需求对其进行修改和调整。在这个示例中,我们使用了MySQL数据库,并假设表中有两个列:日期和值。我们获取了前七天的数据,并使用pandas中的groupby()函数对数据进行分组,然后计算了每天的总值和平均值,并将数据保存为Excel文件。您可以将Excel文件打开并查看生成的表格报表。
阅读全文