Уважаемые эксперты базы данных/Программисты:дизайн базы данных для «подписчиков» и «подписчиков»?
У меня есть таблица MySQL с информацией пользователей, такие как
id user_id name etc.
1 userA
2 userB
3 userC
.. ..
.. ..
Я хочу создать функцию, как «следовать» другим пользователям что-то вроде твиттере. Пользователь A может следовать за пользователем B, или пользователь может следовать за пользователем A, или оба могут следовать друг за другом. Для этой цели необходимо создать таблицу 1, позволяет сказать, что последователи
id user_id follower_id
1 userA userB
2 userC userA
3 userA userC
4 userB userC
5 userX userA
Теперь я хочу, чтобы найти, кто после ПользовательА. Я бы так хотел: Выберите * из подписчиков, где user_id = userA Это выберет userB и userC. Это то что мне нужно.
Теперь я хочу, чтобы найти, какие лица ПользовательЫ следящий (например, в таблице выше, ПользовательО следят userC и userX. Тогда я должен запустить что-то вроде Select * от последователей, где follower_id = ПользовательА.
Моего вопрос заключается в том, что эта база данных дизайн подходит для данной задачи (с учетом избыточности и оптимизации? ум базы данных) Или может быть лучше подход, чем это? Спасибо.
BTW, нижеследующий ** s ** неправильный –