Встречается на собеседованиях • сегодня

Что такое Many-to-Many

В реляционных базах данных Many-to-Many (многие-ко-многим) — это тип связи, когда одна запись в таблице А может быть связана с несколькими записями в таблице Б, и наоборот. Для реализации такой связи используется промежуточная таблица (junction table), которая содержит внешние ключи на обе таблицы.

Пример с SQLAlchemy:

python
from sqlalchemy import Table, Column, Integer, ForeignKey

Промежуточная таблица

association_table = Table(
'association', Base.metadata,
Column('student_id', Integer, ForeignKey('students.id')),
Column('course_id', Integer, ForeignKey('courses.id'))
)

class Student(Base):
tablename = 'students'
id = Column(Integer, primary_key=True)
courses = relationship("Course", secondary=association_table, back_populates="students")

class Course(Base):
tablename = 'courses'
id = Column(Integer, primary_key=True)
students = relationship("Student", secondary=association_table, back_populates="courses")

text

Ключевые моменты:
- Требуется третья таблица для хранения связей
- В Django используется `ManyToManyField`
- Позволяет эффективно моделировать сложные отношения (например, студенты и курсы)
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы