Итак, прочитав это старое сообщение в блоге (что достаточно справедливо, чтобы быть справедливым), я подумал о том, как структурировать некоторые из моих табличных отношений.ups содержат первичный ключ, а первичный ключ - это то, что обращается к данным строки, тогда для такой схемы:
Users : id, name, country, etc.
User_Mailboxes : id, user_id, location, height, etc.
Где пользователь может иметь или не иметь почтовый ящик, но не более одного, будет ли онболее эффективно избавиться от 'id' как первичного ключа таблицы user_mailboxes и установить внешний ключ в качестве первичного ключа?
Исходя из моего понимания InnoDB, таким образом мы сохраним любые вторичные индексы, ищем соответствующий первичный ключ и сможем напрямую использовать User.id для поиска соответствующей информации о почтовом ящике.
Так что-то более похожее на это
Users : id (PRIMARY), name, country, etc.
User_Mailboxes : user_id(FOREIGN, PRIMARY), location, height, etc.
Должно ли быть немного более производительным с точки зрения хранения индекса и случайного поиска?Особенно, если я собираюсь захватить сразу несколько почтовых ящиков на основании некоторых пользовательских критериев?