|
|
|
| Скажите пожалуйста как сгруппировать значения таблицы по ревелевантности полнотекстового поиска. Вот я написал запрос:
SELECT sites.*, site_cash.*, MAX(MATCH(site_cash.cash) AGAINST('авва')) FROM site_cash JOIN sites ON site_cash.id_site=sites.id GROUP BY id_site
|
Cash - это индекс полнотекстового поиска. И в результате запроса мненадо чтобы выводились записи, чтобы от каждых записей с id_site показывалась только та, у которой был
MAX(MATCH(site_cash.cash) AGAINST('авва'))
|
| |
|
|
|
|
|
|
|
для: winflip
(23.06.2009 в 13:41)
| | Может я неясно выразился. Надо сгруппировать все записи по id_site, чтобы для каждого id_site выводилась запись, у которой самое большое значение ревелевантности(не помню как пишется :)))) полнотекстового поиска среди записей с таким же id_site | |
|
|
|
|
|
|
|
для: winflip
(23.06.2009 в 15:32)
| | . | |
|
|
|
|
|
|
|
для: winflip
(23.06.2009 в 20:10)
| | Ждал ответа ждал, не дождался... Помогите пожалуйста оптимизировать запрос:
SELECT * FROM sites AS s1, site_cash AS s2 WHERE s1.id = s2.id_site AND MATCH(cash) AGAINST('авва') = (SELECT MAX(MATCH(cash) AGAINST('авва')) FROM site_cash WHERE id_site=s2.id_site) GROUP BY id_site ORDER BY MATCH(cash) AGAINST('авва')
|
Заранее благодарен | |
|
|
|