通过 SQL 中的多个数据库在 Python 中迭代循环

Posted

技术标签:

【中文标题】通过 SQL 中的多个数据库在 Python 中迭代循环【英文标题】:Iterate loop in Python through multiple databases in SQL 【发布时间】:2017-01-18 17:52:27 【问题描述】:

目前有一个没有多个数据库结构的远程 SQL 服务器。在应用一些分析之前,使用 PyMSSQL 插件通过 Python 代码连接并将数据提取到 pandas 中。有没有办法进行迭代,使得每次循环时,数据库编号都会发生变化,从而允许分析新数据库的数据?

例如 *连接到服务器

cursor.execute("SELECT TOP 100 *variable name* FROM *database_1*")

*分析

*断开服务器

理想情况下会有一个循环允许我自动从 database_1 读取数据到 database_10

【问题讨论】:

【参考方案1】:

IIUC 你可以使用read_sql() 方法轻松做到这一点:

engine = create_engine('mssql+pymssql://USER:PWD@hostname/db_name')

for i in range(1,10):
    qry = 'SELECT TOP 100 variable name FROM database_'.format(i)
    df = pd.read_sql(qry, engine)
    # analyse ...

【讨论】:

以上是关于通过 SQL 中的多个数据库在 Python 中迭代循环的主要内容,如果未能解决你的问题,请参考以下文章