Встречается на собеседованиях • сегодня
Как сделать JOIN в SQLAlchemy
В SQLAlchemy можно выполнять JOIN несколькими способами, в зависимости от того, используете ли вы Core или ORM.
ORM-подход (рекомендуется):
python
from sqlalchemy.orm import joinedload
# Простой JOIN с явным указанием связи
result = session.query(User).join(User.addresses).filter(Address.email.like('%gmail%')).all()
Жадная загрузка (eager loading)
result = session.query(User).options(joinedload(User.addresses)).all()
text
**Core-подход:**
```python
from sqlalchemy import select
stmt = select([users, addresses]).where(users.c.id == addresses.c.user_id)
result = conn.execute(stmt).fetchall()Варианты JOIN:
join()- внутреннее соединение (INNER JOIN)outerjoin()- внешнее соединение (LEFT OUTER JOIN)select_from()+join()- для сложных случаев соединения
Для ORM можно указывать связи через атрибуты отношений, для Core - через столбцы таблиц. SQLAlchemy автоматически определит условие соединения, если между моделями установлены отношения.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы