multiple for in python query loop

Viewed 41

need to save them into different data frames

query = '''select name 
from my_table
where class = {}
and student_number > {}
and student_number <= {} +10
group by name'''
inputs = list(range(0, 100,10))
classes = [1,2,3,4]

the expected result is running these batches for each class individually. e.g df_class1, df_class2 df_class3, df_class4

query = '''
select name  from my_table where class = {} and student_number > 
{} and student_number <= {} +50 group by name'''  
inputs = list(range(0, 100,10)) 
classes = [1,2,3,4] 
##for i in inputs:     for c in classes: query.format(c, i, i)##
enter code here


results = pd.DataFrame() for input, query in queries.items(): 
res = my_db.execute(query)     
results = results.append(pd.DataFrame(res))

e.g df_class1, df_class2 df_class3, df_class4

1 Answers

You should not call a variable class as it is a reserved python keyword.

From what I understand this is what you are looking to achieve:

query = '''select name 
from my_table
where class = {}
and student_number > {}
and student_number <= {} +10
group by name'''
inputs = list(range(0, 100,10))
classes = [1,2,3,4]
for i in inputs:
    for c in classes:
        print(query.format(c, i, i))
Related