Если у меня есть таблица, которая содержит предыдущие покупки товаров из пользователя как так:фрагментация связанных записей в таблице
ID | ProductName | UserID
1 | Grapes | 3455
2 | Water | 1944
3 | Bread | 3455
4 | Milk | 3455
...
Как вы можете видеть в приведенном выше примере, пользователь 3455
купил виноград, хлеб и молоко. Если бы я хотел получить все продукты, купленные пользователем, мне пришлось бы найти каждую из записей, у которых есть пользователь 3455
.
Будет ли хранить все продукты, которые принадлежат пользователю 3455
, ускорить поиск этих записей, таких как дефрагментация жесткого диска? И если да, то процесс удаления старых записей и считывания их до конца базы данных будет пустой тратой вычислительной мощности?
Нет, не очень хорошая идея. Просто добавьте индекс в 'UserID', и это почти похоже на хранение строк вместе. – RiggsFolly
Лучше использовать нормализацию вместо небольшого аспекта производительности. Это сделает ваше программирование утомительным. –