2016-12-12 2 views
0

Попытка получить отфильтрованные результаты сопоставления TABLEA и TableB с обоими в col1 колонке и где переменная питон «Бинго» НЕ TableB col3Python pydobc SQL ODBC Microsoft Access Drive Слишком мало параметров

bingo = 'Data1' 
SQL = 'SELECT a.* FROM TABLEA a WHERE a.col1 NOT IN (SELECT col1 FROM TABLEB) AND (?) NOT IN (SELECT col3 FROM TABLEB);' 
rows = cur.execute(SQL,bingo).fetchall() 

ответ

2

Вы не можете параметризовать имя поля. Вам лучше использовать подстановки/форматирование Python с помощью str.format() таких как:

bingo = 'Data1' 
SQL = 'SELECT a.* FROM TABLEA a WHERE a.col1 NOT IN (SELECT col1 FROM TABLEB) AND {} NOT IN (SELECT col3 FROM TABLEB);'.format(bingo) 
rows = cur.execute(SQL).fetchall() 
Смежные вопросы