Я застрял в очень неприятной проблеме. У меня есть простой раздел «Почта» и «Комментарии» на моем сайте, как в блоге, т. Е. В двух таблицах «сообщения» и «комментарии»:POST_COMMENTS в одном запросе MySQL
сообщений -> idpost, название, текст, дата комментарий -> idcomment, idpost_cmt, email, message, idcomment_cmt
Очень простой. idpost_cmt -> Внешний ключ к вывешивает таблицу
Последнее поле в замечании таблице т.е. «idcomment_cmt» будет использоваться, если кто-то посылает комментарий на уже существующий комментарий:
сообщение
| _ Комментарий 1
| _ Комментарий 2
| _ Комментарий 3
| _ Комментарий 4
_ _ | _ Комментарий 4,1
_ _ | _ Комментарий 4.2
| _ Комментарий 5 . . . so on ...
Теперь я точно хочу, чтобы запросить все сообщения и комментарии в одном запросе mysql. То, что я делаю сейчас, это то, что сначала я получаю все сообщения, а затем прохожу через каждый пост. В каждом цикле я запрашиваю комментарии, используя текущий идентификатор сообщения. А затем перебирайте комментарии и каждый цикл комментариев, добавляйте комментарии к комментариям с помощью текущего комментария.
Как вы можете видеть, таким образом для запроса одной страницы может потребоваться 500 или более запросов sql, что слишком много для сервера базы данных. Если бы кто-нибудь мог мне помочь, как это сделать, я действительно очень признателен.
Большое спасибо ...
Прочитайте это о иерархических данных в реляционных базах данных: http://stackoverflow.com/questions/4048151/what-are-the-options-for-storing-hierarchical-data-in-a-relational-database , Вы используете ** ** модель смещения **. –