У меня есть учетные записи, сообщения и дискуссии.
При получении сообщения я также хочу получить обсуждения, связанные с этим сообщением.
Связь с таблицей - сообщение может иметь ноль или больше обсуждений. Я написал следующий запрос.Это хорошая идея написать запрос несколько раз
SELECT p.*,d._id, d.discussion, d.discussed_by
FROM posts p, discussions d
WHERE d.post_id = p._id
Этот запрос работает, но результат такой, как показано ниже. От _id
до account_id
из таблицы сообщений. Если у меня будет 100 обсуждений по этому сообщению, результат будет иметь 100 дубликатов данных. Как я могу это преодолеть. Моя идея - получить этот пост в первый раз (первый запрос) и получить все обсуждения этого сообщения (второй запрос). Как насчет этого?
В PHP виде массива Я хочу, чтобы получить результаты в следующем формате
пост (1) обсуждение (1), обсуждение (2), обсуждение (3)
Но теперь мое возвращение запрос в следующий результат.
пост (1) обсуждение (1)
пост (1) обсуждение (2)
пост (1) обсуждение (3)
Я использую PHP и MySQL.
ли это возможно или нет?
Для этого необходимо использовать запрос левого соединения –
Сами обсуждения, разумеется, не дублируются. –
@Chetan Panchal Как я могу использовать? Пожалуйста, объясните мне? –