美文网首页
python3 将mysql数据导入excel表中

python3 将mysql数据导入excel表中

作者: 蛋黄果 | 来源:发表于2018-03-29 22:50 被阅读0次
    python3 将mysql数据导入excel表中

    最近自学了python,希望能够对自己的工作有所帮助,重点学习了python链接数据库。啥也不说了、直接上代码,希望高手多指教

    # -*- coding:UTF-8 -*-

    import xlsxwriter

    import pymysql  # Python3的mysql模块

    import time  # excel写入

    ''' 此方法 是传进来sql 语句,然后执行 并返回结果集'''

    def get_data(sql):

        db=pymysql.connect(host='******',user='***',passwd='mima',db='dbname',port=***,charset='utf8')

        # 使用 cursor() 方法创建一个游标对象 cursor

        cursor = db.cursor()

        # 使用 execute()  方法执行 SQL 查询

        #  cursor.execute("select date_format(create_time, '%Y-%m-%d')as dd,count(*) from USER where date_format(create_time, '%Y-%m')='2018-02'group by dd  ")

        cursor.execute(sql)

        # 使用 fetchone() 方法获取单条数据.

        results = cursor.fetchall()

        print(results)

        # 关闭数据库连接

        db.close()

        # 返给结果给函数调用者。

        return results

    def write_data_to_excel():

        sql="select date_format(create_time, '%Y-%m-%d')as dd,count(*) from user where date_format(create_time, '%Y-%m')='2018-02'group by dd "

        #获取sql 语句的结果集

        results = get_data(sql)

        #新建一个xlsx文档 此文档是空的 没有任何内容包括sheet页

        workbook = xlsxwriter.Workbook('file2.xlsx')

        #在xlsx 中新建一个sheet 页

        worksheet = workbook.add_worksheet()  # ()中可以加入名字

        # 遍历result中的没个元素 将数据写入新建的sheet页中。

        #第一层循环 是循环的所有结果集 (('2017-11-15', 8), ('2017-11-21', 8), ('2017-11-22', 1), ('2017-11-23', 5), ('2017-11-24', 2))

        for i in range(len(results)): # 这句一共执行了几次? 元组的长度

            #第二层循环,是循环的 单个结果中的 每个属性 如上述结果集中第二个  ('2017-11-21', 8) 取出每个属性 '2017-11-21'  和 8

            for j in range(len(results[i])):

                # 将属性写入对应的表格的做表中 如 0-0 写入的是 2017-11-21  0-1 写入的是 8

                worksheet.write(i, j, results[i][j])

        #写入完毕后关闭此xls 文件

        workbook.close()

    #调用上面的方法 将数据写入

    write_data_to_excel()

    相关文章

      网友评论

          本文标题:python3 将mysql数据导入excel表中

          本文链接:https://www.haomeiwen.com/subject/zkavcftx.html