首页 > 解决方案 > 从具有已定义名称列表的查询列表中创建数据框

问题描述

我正在尝试运行一个查询来更改从 SQL 数据库中提取的不同数据框的名称。我已经开发了一个简单的定义来运行给定 SQL 文件名称的查询。for 循环运行正常,但它会将Query重写为报告函数中最后观察到的数据帧。

def report(query_name):

   df = []

   filename = query_name +'.sql'

   # read the sql file 
   with open(filename, 'r') as query:

        
       connection = sql_server_connection(server = "server", database = "database")
       with connection:
            df = pd.read_sql_query(query.read(), connection)
  
   return df

queries = ['name1','name2','name3']

for query in queries:
    query = report(query)

我希望从中看到的是

name1 = 报告中的数据(name1)

name2 = 报告中的数据(name2)

名称 3 = 报告中的数据(名称 3)

任何帮助将不胜感激。

标签: pythondataframe

解决方案


试试这个

queries = ['name1','name2','name3']
querie_data = {}

for query in queries:
    querie_data[query] = report(query)

访问数据

querie_data['name1']

推荐阅读