Я использую базу данных postgres, я работаю с кодом fastapi, где я хочу найти данные из базы данных, используя теги, учитывая, что столбец тегов имеет тип json, также входными данными будет список Python. Получение списка Python от пользователя и фильтрация данных с использованием этого списка из базы данных. но это не так..... здесь работает запрос.....
`await cur.execute(f"""
SELECT \*
FROM demo_data.demo_assets
WHERE ("Tags" -\>\> 'category') IN ({','.join(\['%s'\] \* len(data.category))})
OR ("Tags" -\>\> 'domain') IN ({','.join(\['%s'\] \* len(data.domain))})
OR ("Tags" -\>\> 'technology') IN ({','.join(\['%s'\] \* len(data.technology))})
OR ("Tags" -\>\> 'topic') IN ({','.join(\['%s'\] \* len(data.topic))})
OR ("Tags" -\>\> 'author') IN ({','.join(\['%s'\] \* len(data.author))})
OR ("Tags" -\>\> 'platform') IN ({','.join(\['%s'\] \* len(data.platform))})
OR ("Tags" -\>\> 'processerfamily') IN ({','.join(\['%s'\] \* len(data.processerfamily))})
OR ("Tags" -\>\> 'processortype') IN ({','.join(\['%s'\] \* len(data.processortype))})
OR ("Tags" -\>\> 'embeddedboard') IN ({','.join(\['%s'\] \* len(data.embeddedboard))});
""",( data.category, data.domain, data.technology , data.topic, data.author, data.platform, data.processerfamily, data.processortype, data.embeddedboard))
results = await cur.fetchall()`
Мне нужен sql-запрос, который будет работать и получать правильные данные из таблицы
Я использую базу данных postgres, я работаю с кодом fastapi, где я хочу найти данные из базы данных, используя теги, учитывая, что столбец тегов имеет тип json, также входными данными будет список Python. Получение списка Python от пользователя и фильтрация данных с использованием этого списка из базы данных. но это не так..... здесь работает запрос..... [code]`await cur.execute(f""" SELECT \* FROM demo_data.demo_assets WHERE ("Tags" -\>\> 'category') IN ({','.join(\['%s'\] \* len(data.category))}) OR ("Tags" -\>\> 'domain') IN ({','.join(\['%s'\] \* len(data.domain))}) OR ("Tags" -\>\> 'technology') IN ({','.join(\['%s'\] \* len(data.technology))}) OR ("Tags" -\>\> 'topic') IN ({','.join(\['%s'\] \* len(data.topic))}) OR ("Tags" -\>\> 'author') IN ({','.join(\['%s'\] \* len(data.author))}) OR ("Tags" -\>\> 'platform') IN ({','.join(\['%s'\] \* len(data.platform))}) OR ("Tags" -\>\> 'processerfamily') IN ({','.join(\['%s'\] \* len(data.processerfamily))}) OR ("Tags" -\>\> 'processortype') IN ({','.join(\['%s'\] \* len(data.processortype))}) OR ("Tags" -\>\> 'embeddedboard') IN ({','.join(\['%s'\] \* len(data.embeddedboard))}); """,( data.category, data.domain, data.technology , data.topic, data.author, data.platform, data.processerfamily, data.processortype, data.embeddedboard)) results = await cur.fetchall()` [/code] Мне нужен sql-запрос, который будет работать и получать правильные данные из таблицы