Обработка динамического запроса sql в Psycopg2 с несколькими условиями WHEREPython

Программы на Python
Гость
Обработка динамического запроса sql в Psycopg2 с несколькими условиями WHERE

Сообщение Гость »


Я хочу динамически выполнить запрос sql с несколькими условиями WHERE. запрос такой, как показано ниже

query = """SELECT * FROM UBO_EXCEPTION ГДЕ reg_nb = %s И return_date = %s::date И тип_данных = %s ЗАКАЗАТЬ ПО db_timestamp ПРЕДЕЛ 1""" Метод выполнения запроса приведен ниже:

cursor.execute(запрос, параметр) результат = курсор.fetchall() Пример значения param следующий:

(('00246102', datetime.date(2024, 3, 25), 'UKNI'), ('00246107', datetime.date(2024, 3, 25), 'SH01'), ( '00246109', datetime.date(2024, 3, 25), 'CS01'), ('00246101', datetime.date(2024, 3, 25), '')) Выдает ошибку: - не все аргументы преобразуются при форматировании строки.

Я попробовал внести небольшое изменение в метод, как показано ниже:

cursor.execute(запрос, (параметр,)) результат = курсор.fetchall() Это дало мне: - ошибка кортежа из индекса

Я не уверен, что делать дальше. Любое предложение приветствуется. Спасибо.

Вернуться в «Python»