вот мой первый!краткое изложение:
СЦЕНАРИЙ Я создаю приложение, в котором вы можете попросить другого пользователя сделать что-то (например, пробежать 4 мили на этой неделе, приседать на 3 тарелках и т. д.).Я больше работаю на переднем крае, поэтому у меня были некоторые проблемы с троллингом в БД, а что нет.
для дружеских отношений пользователей, я использую две строки, чтобы показать взаимность.Я прошу вас как друга, и мой идентификатор и ваш идентификатор будут занесены в таблицу отношений.как только вы примете это, будет добавлено обратное.
, когда речь идет о вызовах, но я действительно предпочел бы использовать только одну строку на вызов, а затем просто обновлять ТИП по мере развития событий.тип 0 = задание выполнено, 1 = задание принято, 2 = задание выполнено.
У меня есть еще одна таблица с информацией о каждом задании (условия, дата начала, дата окончания, вознаграждение и т. д.), поэтому каждый вызовбудет связан со строкой в таблице challenge_info - еще одна причина, по которой я хотел бы / должен иметь только одну строку на вызов в таблице вызовов.
ПРОБЛЕМА теперь проблема i 'Мы пытались получить информацию о самых последних проблемах пользователя.Итак, зайдите на страницу профиля Тома, и вы увидите список его недавних действий: «Том бросил вызов Эми и выиграл! Том проиграл Джону и т. д.»
Я могу присоединиться к таблице пользователей натаблица вызовов и вызовы конкретного пользователя, только определенные типы вызовов и все такое, но я не могу найти эффективный способ получить имя пользователя, который бросил вызов этому пользователю или который был вызван этим пользователем.
TABLES
__USER__
ID UNAME
1 Tom
2 John
3 Timmy
__CHALLENGES__
CID Challenger_ID Challenged_ID Type
1 1 2 0
2 1 3 1
3 2 1 2
CLIFFS Какой самый эффективный способ определить этот тип отношений и как я могу объединить эти таблицы, напримерчто я могу найти все проблемы, в которых участвовал Том, но также получить имена и отношения (претендент или вызов) людей, с которыми он общался?
Спасибо за ваше время и внимание!