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)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM