Я пытался запустить запрос с разными входными переменными, из которых одна представляет собой список.
Эти переменные выглядят примерно так:
age = 25
male = 'x'
value1 = 1
list = [1,2,3,4,..]
Длина этого список варьируется.
Я передал это в запрос:
query = """SELECT * FROM table
WHERE (Gender_male = %(male)s
AND Age_min <= %(age)s AND Age_max >= %(age)s
AND value1 IN ({list})
"""
df = pd.read_sql(query, con = connection, params= {"male":male, "age":age, "list":list}
Это дает мне следующую ошибку:
Ошибка обработки pyformat-параметров; Python 'list' нельзя преобразовать в MySQL тип
Я также попробовал предлагаемое решение в: Привязка списка к параметрам в Pandas read_sql_query с другими параметрами но это, похоже, не работает из-за переменных в запросе.
Есть ли способ сохранить переменные и проверить, есть ли значение в списке?
Я использую mysql .connector
Заранее большое спасибо!