Это несколько время меня озадачило.Показаны «Подписчики» Сообщения и личные сообщения пользователя
Моя проблема: У меня есть две разные таблицы. Таблица для сообщений пользователей и таблица для подписчиков.
В таблице абонентов выглядит следующим образом:
SubscriberID -> ProfileID
1 -> 2
1 -> 3
2 -> 3
2 -> 4
3 -> 2
Мои сообщения таблица выглядит следующим образом:
сообщения дан -> AuthorID -> постдатировать -> PostBody
1 -> 2 -> 12/20/12 -> Hello Word
2 -> 3 -> 12/21/12 -> Bye Bye World
3 -> 1 -> 12/22/12 -> Oh Wait
4 -> 4 -> 12/23/12 -> Кто-нибудь еще здесь?
В принципе, как это работает, пользователь с идентификатором подписывается на пользователя с идентификатором 2 и 3. ID # 2 подписывается на ID # 3 и # 4. Если пользователь подписался на определенного пользователя, они могут видеть только сообщения от человека, на которого они подписались. Теперь я использую следующий я увидел в аналогичный вопрос:
SELECT POSTS.*
FROM POSTS
JOIN SUBSCRIBERS
ON POSTS.AUTHORID = SUBSCRIBERS.PROFILEID
WHERE SUBSCRIBERS.SUBSCRIBERID = ?
ORDER BY POSTS.POSTID DESC LIMIT 10
Это прекрасно работает, но он не показывает запись пользователя, а также. Я пробовал модифицировать его, но он не работает: \
Если вам интересно, "?" представляет собой идентификатор пользователя
Так что, если вы можете, это было бы здорово, если бы кто-то может сказать мне, как включить собственные сообщения пользователя рядом с стойками от людей, пользователь подписывается на
Самый простой способ - позволить пользователям подписаться на себя (что имеет смысл с учетом вашей модели показа подписных сообщений). – djlumley
Выполнение этого, вероятно, будет моим последним приложением, если ничего не работает – InVert
Альтернатива, которую я вижу, - это использовать подзапросы или несколько запросов. Найдите свой список profileID, на который пользователь подписался, затем вытащите список сообщений, в которых идентификатор профиля находится в списке результатов, или текущий идентификатор профиля. – djlumley