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 ...
随机推荐
- Ubuntu14.04下安装Composer
下载Composer: curl -sS https://getcomposer.org/installer | php 安装Composer: /usr/bin/php composer.phar ...
- appium元素定位工具
appium元素定位工具介绍 使用uiautomatorviewer定位工具 使用Appium Inspector定位工具 使用uiautomatorviewer定位工具 谷歌在Android S ...
- Java集合【4】-- iterable和Iterator的异同分析详解
目录 一.iterator介绍 二.iterable接口 三.为什么有Iterator还需要Iterable 一.iterator介绍 iterator接口,也是集合大家庭中的一员.和其他的Map和C ...
- FL Studio——电音编曲人的奠基石
随着近年来摇滚.电音的发展,越来越多的人开始对电子音乐编曲感兴趣,而电音编曲的首要条件,就是需要一个好的DAW(数字音频工作站),常用的DAW有很多,例如Cubase.Nuendo.Pro Tools ...
- mysql GTID主从复制故障后不停机恢复同步流程
GTID实现主从复制数据同步 GTID是一个基于原始mysql服务器生成的一个已经被成功执行的全局事务ID,它由服务器ID以及事务ID组成,这个全局事务ID不仅仅在原始服务器上唯一,在所有主从关系的m ...
- How tomcat works(深入剖析tomcat)生命周期Lifecycle
How Tomcat Works (6)生命周期Lifecycle 总体概述 这一章讲的是tomcat的组件之一,LifeCycle组件,通过这个组件可以统一管理其他组件,可以达到统一启动/关闭组件的 ...
- Steps 组件的设计与实现
NutUI 组件源码揭秘 前言 本文的主题是 Steps 组件的设计与实现.Steps 组件是 Steps 步骤和 Timeline 组件结合的组件,在此之前他们是两个不同的组件,在 NutUI 最近 ...
- MySQL慢查询日志(SLOW LOG)
慢查询日志可以帮助DBA或开发人员定位可能存在问题的SQL语句,从而进行优化. 如何开启 默认情况下,MySQL是不开启慢查询日志的.可以通过以下命令查看是否开启: mysql> SHOW VA ...
- node-sass版本问题
node-sass sass-loader的问题 出现了版本的问题 版本太高 版本不兼容解决方法: cnpm i node-sass@4.14.1 cnpm i sass-loader@7.3.1 - ...
- 第7.8节 Python中隐秘的类封装方法
前面章节已经介绍了Python中的多态和继承,本节将介绍面向对象程序设计OOP三大特征的另一个特征--封装. 一. 概念 封装是将对象的状态信息(也就是数据.属性)隐藏在对象内部,将对象的属性和 ...