ziom
11.03.2007, 20:20:46
Mam takie zapytanie
SELECT DISTINCT t.topic_id, MATCH (p.value) AGAINST ('słowo') AS score
FROM `posts` p, `topics` t
WHERE MATCH (p.value) AGAINST ('słowo') AND p.topic_id = t.topic_id
ORDER BY MATCH (p.value) AGAINST ('słowo') DESC
I z jakiego powodu wybiera mi powtarzające się recordy?
DeyV
16.03.2007, 00:18:33
Nie jestem pewien, co jest tego przyczyną, ale zamiast DISTINCT możesz skorzystać z GROUP BY t.topic_id, co według manula MySQL w wielu przypadkach jest równoznaczne, a co więcej - na pewno o wiele bardziej przewidywalne.
Z tego co pamiętam, istnieje również składnia DISTINCT ( t.topic_id ) - by może w tej postaci to pytanie działałoby poprawnie.