读取数据
用python从数据库读取数据,一般都会使用专门的数据库连接包,然后使用 cursor,比如连接mysql:
import pymysql
conn=pymysql.connect('localhost',port=3306,user='root',passwd=123,db='test')
cursor=conn.cursor()
cursor.execute(sql)
result=cursor.fetchall()
cursor.close()
conn.close()
然后再将 result 通过 pd.DataFrame(list(result)) 转换成 DataFrame。
在返回的数据量很小的情况下,可以直接使用pandas中的 read_sql_query读取数据,得到的结果就是 DataFrame,省去了从cursor 转换为DataFrame。
import pandas as pd
import pymysql
conn=pymysql.connect('localhost',port=3306,user='root',passwd='test',db='test')
result=pd.read_sql(sql,conn)
#或者
result=pd.read_sql_query(sql,conn)
pandas.read_sql
(sql, con, index_col=None, coerce_float=T