SQL связь двух пользователей

Рейтинг: 1Ответов: 1Опубликовано: 06.05.2015

Есть таблица с пользователями, требуется добавить функцию добавления в друзья. Возникает два варианта решения:

  1. Связывать пользователей одной записью и при запросе искать по двум столбцам.
  2. Связывать пользователей двумя записями и при запросе искать по одному столбцу.

В первом случае придется индексировать два столбца, но записей будет меньше. Во втором достаточно проиндексировать один столбец, но и записей будет в два раза больше. Сейчас я использую второй вариант, но появились сомнения в правильности выбора. Подскажите, какой вариант будет работать быстрее и использовать меньше ресурсов.

Ответы

▲ 4

Связывайте двумя записями.

  • Вставка осуществляется редко, поиск - часто.
  • Поиск по индексу будет один - это практически в два раза быстрее при выборке.
  • Место на диске под записи - копеечное.