pandas:读取数据库read_sql

学习自:pandas.read_sql — pandas 1.2.4 documentation

(10条消息) pd.read_sql()参数详解_pandas.read_csv()参数详解-CSDN博客

用法

pd.read_sql(
    sql, con, index_col=None, coerce_float=True,
    params=None, parse_dates=None, columns=None,
    chunksize=None
)

说明

将一个SQL查询结果或者数据库表读入到DataFrame中。

这个函数是pandas.read_sql_table()、pandas.read_sql_query()更方便的封装,这两个函数可以在本文开头所写的文档中查询到,这里不再多说。

至于这个函数的作用具体跟哪个函数相同,取决于输入参数——如果传入一个SQL语句,则相当于执行read_sql_query,如果传入一个datebase table,则相当于执行read_sql_table。不过,之前所说的两个函数中会有某些更详细的功能,这里没有列出,如果需要可以去之前两个函数中查看。

参数

参数 类型 说明
sql str或SQLAlchemy Selectable 需要执行的SQL查询语句数据库表名
con SQLAlchemy connectable,str,sqlite3 connection 数据库连接的engine,一般可用于SQLAlchemy或pymysql之类的包建立
index_col str或str list index列
coerce_float bool 将数字形式的String转换为float读入

parse_dates

list、dict

将某一列日期型String转换为datetime类型,与pd.to_datetime()函数功能类似。

可以直接提供一个列名list,表示以默认format转换这些列

也可以用dict {column1 : format1, c2 : f2 , ...}将指定的列c转换为对应的格式f,一个format例子为"%Y:%m:%H:%M:%S"

 

params list、tuple、dict  
columns list 要选取的列;一般没用,因为SQL中一般选定了要选择的列了
chunksize int 如果选定该项并给出一个int值;那么每次会返回一个generator,每次迭代输出的行数是该值

返回

DataFrame 或 Iterator(如果指定chunksize)

例子

import pandas as pd
import pymysql
con = pymysql.connect(host="localhost",
                      user="guest",password="password",
                      db="db1",charset = "utf8",port=3333
                      )
sql=SELECT * FROM table1 LIMIT 82000,1000
df = pd.read_sql(sql,con)

 

pandas:读取数据库read_sql

上一篇:Debezium 实时同步数据库


下一篇:Windows环境下Mysql服务启动