繁体   English   中英

使用python从数据库中的多个表中提取多个值

[英]Extracting multiple values from multiple tables from Database using python

我有一个python列表,里面有多个列表,这些列表中有表和这些表中的变量。 例:

list = [ [ table1, var1 ], [ table2,var2,var3,var4 ], [ table3,var5,var6 ] ] .

可以使用python编写单个SQL查询以从所有给定表中提取数据。

SQL我们将编写如下内容

SELECT table1.var1, table2.var2, table2.var3 FROM table1, table2.

但是在python我遇到了困难,因为一次只能访问一个元素,例如:list [0] [1],list [1] [0]等。

您可以动态访问列表元素。 假设您的列表存储字符串,并且您想输出一个字符串:

for tablelist in list:
    for var in tablelist[1:]:
        print(tl[0] + '.' + var)

或使用列表推导:

[tablelist[0] + '.' + var for tablelist in list for var in tablelist[1:]]

要创建包含您的问题的SQL语句的字符串,请执行以下操作:

var_accesses = [tablelist[0] + '.' + var for tablelist in list for var in tablelist[1:]]
var_accesses_string = ', '.join(var_accesses)
tables = [tablelist[0] for tablelist in list]
tables_string = ', '.join(tables)
sql_query = 'SELECT {} FROM {}'.format(var_accesses_string, tables_string)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM