diff options
author | Gábor Hojtsy <gabor@hojtsy.hu> | 2008-01-03 09:55:06 +0000 |
---|---|---|
committer | Gábor Hojtsy <gabor@hojtsy.hu> | 2008-01-03 09:55:06 +0000 |
commit | 03c18bb2042114d3a9a8b5396d77696cdff2a188 (patch) | |
tree | e6be956520f782dbf3b8687b7de1c9768e742c71 | |
parent | 18d46e4733939de06cdd6188736f4adda252fff9 (diff) | |
download | brdo-03c18bb2042114d3a9a8b5396d77696cdff2a188.tar.gz brdo-03c18bb2042114d3a9a8b5396d77696cdff2a188.tar.bz2 |
#205795 by douggreen: search result normalization used a wrong calculation
-rw-r--r-- | modules/search/search.module | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/modules/search/search.module b/modules/search/search.module index f1636106c..cff5a9872 100644 --- a/modules/search/search.module +++ b/modules/search/search.module @@ -926,9 +926,9 @@ function do_search($keywords, $type, $join1 = '', $where1 = '1', $arguments1 = a } // Calculate maximum keyword relevance, to normalize it. - $select = "SELECT MAX(i.score * t.count) FROM {search_index} i $join WHERE $conditions GROUP BY i.type, i.sid HAVING COUNT(*) >= %d"; + $select = "SELECT SUM(i.score * t.count) AS score FROM {search_index} i $join WHERE $conditions GROUP BY i.type, i.sid HAVING COUNT(*) >= %d ORDER BY score DESC"; $arguments = array_merge($arguments1, array($query[4])); - $normalize = db_result(db_query($select, $arguments)); + $normalize = db_result(db_query_range($select, $arguments, 0, 1)); if (!$normalize) { return array(); } |