Back to questions
Junior — Middle
54
Как реализовать объединение таблиц при использовании SQLAlchemy?
Companies where asked
ИнфоТехСервис
Effective Mobile
Answer from AI
sobes.tech AI
В SQLAlchemy для объединения таблиц обычно используется метод join(), который позволяет связать две таблицы по определённому условию (например, по внешнему ключу).
Пример объединения двух таблиц User и Address по полю user_id:
from sqlalchemy.orm import sessionmaker
from sqlalchemy import create_engine
engine = create_engine('sqlite:///:memory:')
Session = sessionmaker(bind=engine)
session = Session()
# Предположим, что у нас есть модели User и Address
query = session.query(User).join(Address, User.id == Address.user_id)
for user in query.all():
print(user.name)
Можно также использовать outerjoin() для левого внешнего соединения. Важно, чтобы условие соединения было корректно задано, либо SQLAlchemy автоматически определит его по внешним ключам, если они настроены в моделях.