python 作业 用python实现 mysql查询结果导出带列名

 1 import pandas as pd
 2 import numpy as np
 3 import matplotlib as mpl
 4 import matplotlib.pyplot as plt
 5 mpl.rcParams['font.sans-serif']=['KaiTi']
 6 mpl.rcParams['font.serif']=['KaiTi'] #导入需要用到的常用库
 7 import pymysql #导入mysql的连接模块
 8 conn=pymysql.connect(user='root',password='xxxxxx',database='xxx') #设置连接用户名密码数据库等
 9 cursor=conn.cursor() #设置游标 设置了才能正常查询
10 
11 def mysql(sql):
12      cursor.execute(sql) #执行查询语句
13      jieguo=cursor.fetchall() #查看全部查询结果
14      cols=cursor.description #类似 desc table_name返回结果
15      col=[] #创建一个空列表以存放列名
16      for v in cols:
17            col.append(v[0]) #循环提取列名,并添加到col空列表
18      dfsql=pd.DataFrame(jieguo,columns=col) #将查询结果转换成DF结构,并给列重新赋值
19      if dfsql.empty:
20             return 'empty set' #判断查询结果为空时返回的值
21      else:   
22             return dfsql #以DF结构返回查询结构,DF.to_excel...导出查询结果时可以带列名,这样就解决了mysql直接导出结果无列名的问题

查询示例:

猜你喜欢

转载自www.cnblogs.com/dataxiong/p/11652254.html