从Python PYODBC中的变量中选择列

从Python PYODBC中的变量中选择列,python,sql,select,odbc,Python,Sql,Select,Odbc,我的第一个问题是,请客气一点。 我对python和SQL都是新手,所以我正在寻找自己的方法。 我正在用python编写一个函数,它应该从数据库中的表中选择列,列名称来自变量(列表)。下面是我想要的代码,显然它不起作用。有没有办法做到这一点,或者我不应该麻烦,而是直接将列表类型的列名输入到c.execute中?非常感谢。亚历克斯 def data_extract1(): column_list1 = ["column1","column2"] c.execute ('SELECT

我的第一个问题是,请客气一点。 我对python和SQL都是新手,所以我正在寻找自己的方法。 我正在用python编写一个函数,它应该从数据库中的表中选择列,列名称来自变量(列表)。下面是我想要的代码,显然它不起作用。有没有办法做到这一点,或者我不应该麻烦,而是直接将列表类型的列名输入到c.execute中?非常感谢。亚历克斯

def data_extract1():
    column_list1 = ["column1","column2"]
    c.execute ('SELECT column_list1 FROM myBD' )
    for row in c.fetchall():
        print (row)
您可以使用
format()
join()
将查询字符串中的
列列表1
替换为所需的列

c.execute('SELECT {} FROM myBD'.format(", ".join(column_list1)))
“,”.join(列列表1)
从列列表中创建逗号分隔的字符串


format()
将查询字符串中的
{}
替换为新字符串

有效!太好了,谢谢你,F先生!我应该读些什么来了解更多关于使用它的信息?