Заменить PHP код на код в запросе ...

Сенсей

Новичок
Заменить PHP код на код в запросе ...

Поиск по комментариям в новостях ....

Нужно вывести только по одному названию новости - даже если совпадений в комментариях к этой новости было много ....

я делаю щас это при помощи кода :

PHP:
while(list($comments_id, $comments_news_id, $news_title) = sql_fetch_row($result))
{
if (!isset($this_news_id) OR $comments_news_id != $this_news_id)
{
echo $news_title;
$this_news_id = $comments_news_id;
}
}
Но может есть возможность сделать это при помощи мускула?
 

Demiurg

Guest
>Но может есть возможность сделать это при помощи мускула?
есть, если новости хранить в базе.
 

Сенсей

Новичок
Так я их .. новости и храню в базе .... но не знаю как преобразить запрос .. что бы он заменял вышеприведенный :

PHP:
if (!isset($this_news_id) OR $comments_news_id != $this_news_id)
{
echo $news_title;
$this_news_id = $comments_news_id;
}
 

DimbIch

Новичок
хм .....
я не могу понять где у тебя вообще запросы к базе и что надо менять...
 

Сенсей

Новичок
Какая разница какой у меня запрос ..... не в этом дело .. но если так надо .. то вот :

PHP:
$result = sql_query("select a.news_comments_id, a.news_comments_news_id, b.news_title from ".$prefix."_news_comments a, ".$prefix."_news b where news_comments_text like '%".adsl($query)."%' AND b.news_id=a.news_comments_id ORDER BY a.news_comments_news_id, a.news_comments_id", $dbi);
Тут главное суть понять ....

Например есть 1 новость .... у этой новости есть 20 комментариев ....

Есть поиск по этим комментариям .... но я то вывожу в результатах поиска название Новости а не сам комментарий ....

Итого допустим искомое слово было найдено в 5'ти комментариях из 20 .... поэтому при выводе в while мы имеем 5 повторений названия одной и той же новости ... для того что бы выводила только ОДНО название новости ..... я и использую в цикле вывода названий новости код:


PHP:
if (!isset($this_news_id) OR $comments_news_id != $this_news_id)
{
echo $news_title;
$this_news_id = $comments_news_id;
}
Но мне это не нравится ... хочется уже в запросе исключить из резултатов лишние данные ... а не обрабатывать их в цикле ....
 

Сенсей

Новичок
Пробовал ..... какой то бред получается .... вроде бы работает .. ID новости пишет одинк раз .. как и надо .. а вот название новости - не соответствует .. название новости - является названием другой новости ...к которой вообще комментариев нету .....

Вроде запрос то у меня не сложный .. и правилный ....сколько не разбирался - не выходит понять почему в результате поиска там находится еще и новость к которой нет вообще комментариев либо в комментариях которой не найдено совпадений ... :confused:
 

SelenIT

IT-лунатик :)
Сенсей, верно ли, что news_comments_id - id комментария, а news_comments_news_id - id новости, к которой он относится? Если так, то, похоже, ты не по тем полям таблицы связываешь.
 
Сверху