Python利用openpyxl带格式统计数据(2)- 处理mysql数据
上一篇些了openpyxl处理excel数据,再写一篇处理mysql数据的,还是老规矩,贴图,要处理的数据截图:

再贴最终要求的统计格式截图:

第三贴代码:
1 '''
2 #利用openpyxl向excel模板写入数据之mysql篇
3 '''
4 #写mysql的
5 import xlwt
6 import xlrd
7 import openpyxl
8 import pymysql
9
10 #首先连接数据库
11 database = pymysql.connect('localhost','databaseusername','databasepassword','databasename',charset='utf8')
12 #初始化数据库指针
13 cursor = database.cursor()
14
15 #定义sql语句
16 sql = "SELECT company, COUNT(company), SUM(weight), SUM(weight * price) FROM tablename GROUP BY company;"
17 #执行sql语句
18 cursor.execute(sql)
19 #将结果保存下来
20 result = cursor.fetchall()
21 print(result) #打印看是否符合预期
22
23 #取出结构后开始遍历结果
24 for i in result:
25 if i[0] == "张三粮配":
26 a_che = i[1]
27 a_total_weight = i[2]
28 a_total_price = i[3]
29 if i[0] == "李四粮食":
30 b_che = i[1]
31 b_total_weight = i[2]
32 b_total_price = i[3]
33 if i[0] == "王五麦子":
34 c_che = i[1]
35 c_total_weight = i[2]
36 c_total_price = i[3]
37 if i[0] == "赵六麦子专营":
38 d_che = i[1]
39 d_total_weight = i[2]
40 d_total_price = i[3]
41
42 #导入模板文件
43 tem_excel = openpyxl.load_workbook('路径/统计表_openpyxl.xlsx')
44 tem_sheet = tem_excel['Sheet1']
45
46 #开始向单元格写入数据
47 #先写张三的,张三的在第三行第二列到第四列
48 tem_sheet['B3'] = a_che
49 tem_sheet['C3'] = a_total_weight
50 tem_sheet['D3'] = a_total_price
51 #再写李四,李四的在第四行第二到第四列
52 tem_sheet['B4'] = b_che
53 tem_sheet['C4'] = b_total_weight
54 tem_sheet['D4'] = b_total_price
55 #再写王五的,王五的在第五行第二到第四列
56 tem_sheet['B5'] = c_che
57 tem_sheet['C5'] = c_total_weight
58 tem_sheet['D5'] = c_total_price
59 #最后些赵六的,赵六的在第六行第二到第四列
60 tem_sheet['B6'] = d_che
61 tem_sheet['C6'] = d_total_weight
62 tem_sheet['D6'] = d_total_price
63
64 #最后将工作簿另存
65 tem_excel.save('路径/2020-11-04-openpyxl-mysql.xlsx')
最后贴效果图:

Python利用openpyxl带格式统计数据(2)- 处理mysql数据的更多相关文章
- Python利用openpyxl带格式统计数据(1)- 处理excel数据
统计数据的随笔写了两篇了,再来一篇,这是第三篇,前面第一篇是用xlwt写excel数据,第二篇是用xlwt写mysql数据.先贴要处理的数据截图: 再贴最终要求的统计格式截图: 第三贴代码: 1 '' ...
- 【PHP】将EXCEL表中的数据轻松导入Mysql数据表
在网络上有不较多的方法,在此介绍我已经验证的方法. 方法一.利用EXCEL表本身的功能生成SQL代码 ①.先在“phpmyadmin”中建立数据库与表(数据库:excel,数据表:excel01,字段 ...
- 将EXCEL表中的数据轻松导入Mysql数据表
转载自:http://blog.163.com/dielianjun@126/blog/static/164250113201042310181431/ 在网络上有不较多的方法,在此介绍我已经验证的方 ...
- python 利用jieba库词频统计
1 #统计<三国志>里人物的出现次数 2 3 import jieba 4 text = open('threekingdoms.txt','r',encoding='utf-8').re ...
- mysql 数据操作 多表查询 目录
mysql 数据操作 多表查询 准备 多表连接查询介绍 mysql 数据操作 多表查询 多表连接查询 笛卡尔积 mysql 数据操作 多表查询 多表连接查询 内连接 mysql 数据操作 多表查询 多 ...
- Pandas系列-读取csv/txt/excel/mysql数据
本代码演示: pandas读取纯文本文件 读取csv文件 读取txt文件 pandas读取xlsx格式excel文件 pandas读取mysql数据表 import pandas as pd 1.读取 ...
- mysql数据表增删改查
http://www.runoob.com/mysql/mysql-tutorial.html 一.MySQL 创建数据表 创建MySQL数据表需要以下信息: 表名 表字段名 定义每个表字段 语法 以 ...
- MySQL 数据热备份
mysqlhotcopy使用lock tables.flush tables和cp或scp来快速备份数据库.它是备份数据库或单个表最快的途径,完全属于物理备份,但只能运行在数据库目录所在的机器上. 与 ...
- Python利用xlutils统计excel表格数据
假设有像上这样一个表格,里面装满了各式各样的数据,现在要利用模板对它进行统计每个销售商的一些数据的总和.模板如下: 代码开始: 1 #!usr/bin/python3 2 # -*-coding=ut ...
随机推荐
- 痞子衡嵌入式:在IAR开发环境下为工程开启CRC完整性校验功能的方法
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家分享的是在IAR开发环境下为工程开启CRC完整性校验功能的方法. CRC校验在嵌入式领域里的应用非常广,比如在通信领域,CRC检验值可以作为数据 ...
- Ubuntu16.04配置静态ip
1.安装好ubuntu16.04虚拟机之后,首先按照下图的步骤进行: 首先需要打开虚拟网络编辑器,点击VMnet8的虚拟网卡,如果没有这个网卡,只需在编辑虚拟机设置里面将网络适配器类型改为NAT模式, ...
- [COCI2016-2017#1] Mag 结论证明
结论:最多包含一个 \(2\),并且不在链的两端点. 证明:我们问题分成两个 \(\texttt{pass}\). \(\texttt{pass 1}\):\(\forall u,s.t.x_{u}\ ...
- django搭建
1.进入终端使用虚拟环境安装---pip install django==2.2 2.创建新的工程django-admin startproject bookpro 3.创建app或模块 使用djan ...
- 《Machine Learning in Action》—— 白话贝叶斯,“恰瓜群众”应该恰好瓜还是恰坏瓜
<Machine Learning in Action>-- 白话贝叶斯,"恰瓜群众"应该恰好瓜还是恰坏瓜 概率论,可以说是在机器学习当中扮演了一个非常重要的角色了.T ...
- guava中的SettableFuture分析
当缓存中没有要找的数据时,则要从数据库中去查询,而当并发量比较大时可能会击穿数据库,所以guava cache对同一值的查询做了合并请求的处理.其中就用到了SettableFuture,类似一把锁,只 ...
- select监听服务端
# can_read, can_write, _ = select.select(inputs, outputs, None, None)## 第一个参数是我们需要监听可读的套接字, 第二个参数是我们 ...
- 「刷题笔记」LCA问题相关
板子 ll lg[40]; ll dep[N],fa[N][40]; ll dis[N]; void dfs(ll u,ll f) { dep[u]=dep[f]+1; fa[u][0]=f; for ...
- 团队作业第三次 —— UML设计
这个作业要求在哪里 https://edu.cnblogs.com/campus/fzzcxy/2018SE2/homework/11366 这个作业的目标 <团队一起设计UML图> 团队 ...
- 基础篇:异步编程不会?我教你啊!CompeletableFuture
前言 以前需要异步执行一个任务时,一般是用Thread或者线程池Executor去创建.如果需要返回值,则是调用Executor.submit获取Future.但是多个线程存在依赖组合,我们又能怎么办 ...