У меня есть база данных с таблицами A, B, C и D (отношение всех к одному). A имеет много B, B имеет много C и C имеет много D. Теперь я хочу добавить другую таблицу Z. Таблица Z будет иметь много A, а таблица A может быть родителем для другого A рекурсивно.Запросить несколько соединений или добавить дополнительный столбец
Теперь, если бы я хотел запросить все D, связанные со всеми A, которые имеют тот же Z, что и другой A, я должен получить идентификатор Z и запросить все отношения. Было бы быстрее, если бы таблица D имела столбец с идентификатором таблицы Z? Я мог только запросить все D с идентификатором Z. Было бы быстрее, чем запрашивать все отношения? Правильно ли это делать?
A как пользователь, Z подобен группе, а D может быть сообщением. Если бы я хотел получить все сообщения всех пользователей в той же группе, что и мой пользователь, это лучше (производительность) для запроса по отношениям или добавляет идентификатор группы в почтовую таблицу?