Я попытался использовать код ниже, но у меня все еще есть "вокруг каждого элемента в строке".
l = ['a','b','c']
query = "SELECT " + str(l).strip('[,]') + " FROM table"
возвращается
"SELECT 'a', 'b', 'c' FROM table"
Как я могу это исправить?
Использование str.join
:
query = "SELECT " + ", ".join(l) + " FROM table"
print(query)
"SELECT a, b, c FROM table"
Как указывалось, формирование SQL-запросов из строк должно быть последним средством.
вы можете использовать join: -
l = ['a','b','c']
query = "SELECT '" + l.join('') + "' FROM table"
print(query)
"SELECT 'abc' FROM table"
если вы хотите, чтобы они присоединились, вы можете использовать вышеуказанный код.
l
на самом деле содержит только допустимые имена столбцов. (Кроме того, он возвращает ту же строку, которую уже имеет OP).table
существует, список столбцов отражает допустимые поляtable
.