Python查詢MySQL資料,並提取mysql欄位名轉化成DataFrame
阿新 • • 發佈:2018-11-04
今天覆習一下,用python操作mysql以及excel,並且作為橋樑,連線mysql,excel.
那麼既然用到了python操作資料就不免需要用到dataframe做資料分析,本文主要一個麻煩點在於從mysql 中獲取到的資料沒有欄位名,
下面直接上程式碼:
import pymysql import pandas as pd def get_mysql_data(sql): """ 提取mysql中的資料並返回成dataframe 引數只需要sql語句 """ conn = pymysql.connect( host='localhost', user='root', password='root1234', db='test1', port=3306 ) cur = conn.cursor() # 獲取操作遊標,也就是開始操作 sql_select = sql # 查詢命令 cur.execute(sql_select) # 執行查詢語句 result = cur.fetchall() # 獲取查詢結果 col_result = cur.description # 獲取查詢結果的欄位描述 columns = [] for i in range(len(col_result)): columns.append(col_result[i][0]) # 獲取欄位名,咦列表形式儲存 df = pd.DataFrame(columns=columns) for i in range(len(result)): df.loc[i] = list(result[i]) # 按行插入查詢到的資料 conn.close() # 關閉資料庫連線 return df
得到dataframe之後當然也可以匯出為excel或者進行後續的資料分析工作,這裡就不再贅述。