Прежде чем переместить мой код в SQLAlchemy, у меня есть запрос MySQL, который ищет значение в нескольких столбцах (например, - WHERE 'value' in (col1, col2)
), который прекрасно работает при отправке запроса вручную в базу данных.
Использованиеописанный выше случай относительно прост, но в будущем я могу захотеть выполнить аналогичный запрос для более чем двух столбцов, поэтому просто хочу опередить эту проблему сейчас.
В настоящее время я преобразовал свой запрос в приведенный ниже (который работает), но я пытаюсь найти синтаксис, подобный приведенному выше.
metadata = sqlalchemy.MetaData(mydb, reflect=True)
select_stmt = (tbl_pbp.select(
((tbl_pbp.c.home_team == team_abbreviation) | (tbl_pbp.c.away_team == team_abbreviation))
& (tbl_pbp.c.is_corsi == True)))
Когда я пытаюсь описать ниже, я получаю синтаксическую ошибку, поэтому не уверен, что это проблема с in_
ключевое слово, которое я пытаюсь использовать.
metadata = sqlalchemy.MetaData(mydb, reflect=True)
select_stmt = (tbl_pbp.select(
(team_abbreviation in_(tbl_pbp.c.home_team, tbl_pbp.c.away_team)
& (tbl_pbp.c.is_corsi == True)))
Любая помощь очень ценится - спасибо!