ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > PHP, PERL, MySQL, JavaScript
   
 
 
Опции темы Поиск в этой теме Опции просмотра

как грамотно выбрать дерево из БД?
  #1  
Старый 06.02.2009, 23:02
Аватар для Дикс
Дикс
Познавший АНТИЧАТ
Регистрация: 16.04.2006
Сообщений: 1,488
Провел на форуме:
2209675

Репутация: 537


Отправить сообщение для Дикс с помощью ICQ
По умолчанию как грамотно выбрать дерево из БД?

есть таблица с комментариями, у некоторых комментариев так называемый parent_id - "комментарии на комментарии".

искал решение грамотной выборки без миллиона запросов к бд.

нашёл вот это:
http://habrahabr.ru/blogs/sql/43955/
там огорчили, что в mysql нет нормальных средств для этого и типа пользуйтесь пхп, и ссылка вот сюда:

http://www.codenet.ru/webmast/php/tree.php

это понятно - нерациональный говнокод.

собственная мысль (сонный мозг уже ниче не соображает):
PHP код:
-select comments where parent_id == null
$ids 
все выбранные идчерез запятую
-select comments where parent_id in($ids)

фореач comments{
если in_array(текущий ид$parent_ids)
   
то выбираем к нему все комментарии второго уровня


в результате мы делаем тока два запроса (может можно и один сделать через иннер джоин?)
и потом выводим средставми пхп в нужном порядке.
 
Ответить с цитированием
 



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
F.A.Q по Пранку Nightmarе Статьи 43 28.03.2010 10:55
FAQ по выделенным серверам †Romi4† Авторские статьи 4 31.08.2009 16:19
Социальная инженерия. Профессиональное программирование. Последовательный взлом dinar_007 Болталка 15 23.12.2008 12:30



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ