Python Pandas pandas.read_sql函数实例用法
pandas.read_sql
函数是 Pandas 库中的一个用于读取 SQL 数据库数据的函数。该函数可以将 SQL 数据库中的数据读取为 Pandas DataFrame 类型的数据,方便数据处理分析。下面我们来详细讲解 pandas.read_sql
函数的用法。
函数语法
pandas.read_sql(sql, con, index_col=None, coerce_float=True, params=None, parse_dates=None, columns=None, chunksize=None)
参数说明
sql
:要执行的 SQL 查询语句。con
:一个数据库连接对象或字符串,表示连接数据库的URL, 例如DEMO.sqlite3。index_col
:用作返回 DataFrame 的索引的列名或列编号,如果不需要索引则设置为 None。coerce_float
:将数字字段强制转换为浮点型。params
:用于替换 SQL 查询语句中的参数的参数列表,例如 {‘param1’: 1}。parse_dates
:应将哪些列解析为日期时间类型。 默认情况下,会尝试解析所有列。columns
:只获取指定的列,例如 [‘name’, ‘age’]。chunksize
:每次读取的行数。
示例
连接 SQLite 数据库,并查询表数据:
import sqlite3
import pandas as pd
# 创建 SQLite 连接对象
conn = sqlite3.connect('demo.db')
sql = 'SELECT * FROM person'
df = pd.read_sql(sql, conn)
print(df)
在上面的示例中,我们首先通过 sqlite3.connect
函数创建了 SQLite 数据库连接对象。接着,我们执行了一条 SQL 查询语句,将查询结果读取到 Pandas DataFrame 类型的数据中。最后,我们将 DataFrame 打印到控制台上。
连接 MySQL 数据库,并查询表数据:
import pymysql
import pandas as pd
# 创建 MySQL 连接对象
conn = pymysql.connect(
host='localhost',
port=3306,
user='root',
password='123456',
database='demo'
)
sql = 'SELECT * FROM `person`'
df = pd.read_sql(sql, conn)
print(df)
在上面的示例中,我们首先通过 pymysql.connect
函数创建了 MySQL 数据库连接对象。接着,我们执行了一条 SQL 查询语句,将查询结果读取到 Pandas DataFrame 类型的数据中。最后,我们将 DataFrame 打印到控制台上。
通过以上两个示例,我们可以看出 pandas.read_sql
函数的用法非常简单。我们只需要传入要执行的 SQL 查询语句以及数据库连接对象或字符串即可读取数据库数据。同时,我们也可以通过设置其他参数参数来控制查询结果的处理方式,使其更适合我们的数据处理需求。