python轻松将mysql数据导出到excel报表

导航

  • 报表!报表!
  • 代码去哪儿了
  • 乱码
  • 复杂查询
  • 人生苦短,我用python
  • 实战案例
  • 结语
  • 参考

人生苦短,我用python。

第一次接触pyton是在2018年底。那一年,去了一家做AI教育的公司。

那一年,也是人工智能风靡的一年。因为大部分的AI库都是基于Python的,所以python也被炒得热乎朝天。

真正下定决心开启python之旅,其实是两年之后。一部分原因是在学习推荐算法,而更重要的原因是为了应对各种繁杂的数据报表。

报表!报表!

离开上家公司之后,去了另外一家新兴行业的创业公司。

因为所在项目组是新成立的,所以前期老板会要求导出数据报表。当然,随着业务的不断发展,这种需求几乎一直都有。

人工导出报表,总是让人不堪其扰。

而这种需求总是不固定的。有些报表是临时的,有些报表可能会使用几个月。

好不夸张地说,这年写的报表超过了过去职业生涯的总和。

最可气的是,这种导出报表,在领导们看来了就是写几句sql的事情,没有必要体现在工作任务中。

代码去哪儿了

我们平时其实都会忙于正式的工作——项目的编码。

所以,这些项目都是会提交到git仓库。

而那些临时性的报表需求,简单一点的我就写个sql处理了,复杂一点的会用C#或者Java写个导出功能代码。

但是,需求繁杂,管理也不够正式。当下次同样的需求来的时候,又会满世界去找代码…

乱码

有人说,很多数据库客户端工具也能导出数据到excel? 没有必要写程序导出。

但是,有的导出之后,在本机打开是正常的,发送给别人就成了乱码。

这里还是建议是用程序导出,可以设置合适的格式。

复杂查询

报表本身用于数据分析。数据库的设计总是很难满足不同维度的数据导出,又说一些复杂的报表,往往需要超过3张以上数据库表才能完成。

联表的复杂度就不用多说,如果有些表数据太大,sql执行超时也是很普遍的。

而程序处理,显得更加灵活。

人生苦短,我用python

对比了多种语言,踩过了无数的坑,最终发现python这一利器。

python具备很多优点:

  • 简单易学:相对于java等,语法更简单,更易上手,适用于编程初学者。
  • 数据分析数据挖掘:海量数据的处理是 Python 的强项。
  • 轻量:随手写一个python文件即可执行。如果使用C#或者Java,需要构建一个项目。

特别适合做数据统计和分析。

实战案例

需求:

导出2018-11-12~2019-01-01时间段内的文章到excel表格,字段如下:

文章ID 文章类型 标签 标题 创建时间

使用Python来实现,比较简单,这里给出一个万能模板,您只需要更改数据库连接,sql即可。

#_*_coding:utf-8_*_
#导入pymysql的包
import pymysql
import pymysql.cursors

# 导入excel操作包
import xlwt
from datetime import datetime


def get_data(sql):
    # 创建数据库连接
    #获取一个数据库连接,注意如果是UTF-8类型的,需要制定数据库</
  • 24
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值