Python Pandas pandas.read_sql函数实例用法
简介
pandas.read_sql函数是pandas库的一个功能强大的读取SQL查询结果的函数。通过这个函数,可以轻松地将SQL语句查询结果转换为pandas DataFrame(数据框)形式,方便进一步地数据处理与分析。
基本语法
pandas.read_sql(sql, con, index_col=None, coerce_float=True, params=None, parse_dates=None, columns=None, chunksize=None)
参数详解
- sql: 要执行的SQL语句。
- con: 数据库连接器,可以是Python DB-API连接对象(例如,pymysql.connect)或SQLite StringType连接字符串。
- index_col: 设置当作DataFrame索引的列名。
- coerce_float: 默认 True 会将查询结果中的数值类型看做float类型。
- params: 可选,该参数是用于传入SQL查询语句的条件。
- parse_dates: 默认为None,将结果集中一列转换为日期时间类型。
- columns: 默认为None,表示返回的列,如果没有指定列名,就返回所有列。
- chunksize: 可选,指定每次读取的行数。
示例1:从MySQL读取数据
在这个示例中,我们将使用pandas.read_sql函数从MySQL数据库中读取数据。我们使用了pymysql库来建立与MySQL的连接,并执行了一个查询,读取了student表中的所有数据。
# 导入所需库:
import pymysql
import pandas as pd
# 建立数据库连接:
conn = pymysql.connect(host='localhost', port=3306, user='root', password='password', db='test')
# 执行查询语句:
sql = 'SELECT * FROM student'
data = pd.read_sql(sql, conn)
print(data)
示例2:从SQLite读取数据
这个示例是从SQLite数据库中读取数据,使用了SQLite3库来建立与SQLite的连接,并执行了一个查询,读取了titanic表中的数据,其中parse_dates参数用于将日期时间类型的数据自动转换。
# 导入所需库:
import sqlite3
import pandas as pd
# 建立数据库连接:
conn = sqlite3.connect('titanic.sqlite')
# 执行查询语句:
sql = 'SELECT * FROM titanic'
data = pd.read_sql(sql, conn, parse_dates=['dob'])
print(data)
以上,两个示例讲解了如何使用pandas.read_sql函数,不同的数据库建立连接的方式可能会略有差异,但是使用pandas.read_sql函数来读取数据库数据的方式是相似的。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python Pandas pandas.read_sql函数实例用法 - Python技术站