Каждый раз, когда просматривается диаграмма базы данных, одна область, в которой люди критикуют, - это внутренние объединения. Они пристально смотрят на них, и у них есть вопросы, чтобы понять, действительно ли там должно быть внутреннее соединение.
Пример простой библиотеки:
Отношение многие ко многим обычно определяется в SQL тремя таблицами: Книга , Категория , BookCategory .
В этой ситуации Category - это таблица, которая содержит два столбца: ID , CategoryName .
В этой ситуации у меня возникли вопросы о таблице Category , это нужно? Может ли он использоваться в качестве справочной таблицы, а в таблице BookCategory хранить CategoryName вместо CategoryID , чтобы избежать необходимости выполнять дополнительное INNER JOIN. (В этом вопросе мы будем игнорировать изменение, удаление любых имен категорий)
Вопрос в том, что плохого во внутренних соединениях? В какой момент это делает их негативными (общие рекомендации, такие как количество транзакций, количество записей, количество соединений в выражении и т. Д.)?