问题:在Python的For循环中添加SQL查询

有没有办法在 python 的 For 循环中添加 SQL 查询,其中表名和数据库名是可变的?像这样的东西:

database = []
tables= []
column = []

for x in database: 
    for y in tables:
        for z in column:
            SQL = "select * from x.y where z is NOT NULL;"
            cursor.execute(sql)`enter code here`

解答

只需使用字符串格式。在您的示例中:

database = []
tables= []
column = []

for x in database: 
    for y in tables:
        for z in column:
            SQL = "select * from {x}.{y} where {z} is NOT NULL;".format(x=x, y=y, z=z)
            cursor.execute(sql)

这是 python 字符串格式化的一个例子,但你可以使用字符串连接,% formattingf-strings

Logo

PostgreSQL社区为您提供最前沿的新闻资讯和知识内容

更多推荐