From 90f9ff87cccc0dd01de0a11f88a085f0ef37afa7 Mon Sep 17 00:00:00 2001 From: miker Date: Wed, 12 Apr 2006 16:39:42 +0000 Subject: [PATCH] using average rank instead of summed rank git-svn-id: svn://svn.open-ils.org/ILS/trunk@3685 dcc99617-32d9-48b4-a31d-7c20da2025e4 --- .../Application/Storage/Publisher/metabib.pm | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/Open-ILS/src/perlmods/OpenILS/Application/Storage/Publisher/metabib.pm b/Open-ILS/src/perlmods/OpenILS/Application/Storage/Publisher/metabib.pm index 494b632f9e..2ee3cb55f3 100644 --- a/Open-ILS/src/perlmods/OpenILS/Application/Storage/Publisher/metabib.pm +++ b/Open-ILS/src/perlmods/OpenILS/Application/Storage/Publisher/metabib.pm @@ -900,7 +900,7 @@ sub postfilter_search_class_fts { my $sort_dir = $args{sort_dir} || 'DESC'; my $ou = $args{org_unit}; my $ou_type = $args{depth}; - my $limit = $args{limit}; + my $limit = $args{limit} || 10; my $offset = $args{offset} || 0; my $outer_limit = 1000; @@ -1258,7 +1258,7 @@ sub postfilter_search_multi_class_fts { my $sort_dir = $args{sort_dir} || 'DESC'; my $ou = $args{org_unit}; my $ou_type = $args{depth}; - my $limit = $args{limit}; + my $limit = $args{limit} || 10;; my $offset = $args{offset} || 0; if (!$ou) { @@ -1417,7 +1417,7 @@ sub postfilter_search_multi_class_fts { my $bonuses = join (' * ', @bonus_lists); my $relevance = join (' + ', @rank_list); - $relevance = "SUM( ($relevance) * ($bonuses) )"; + $relevance = "AVG( ($relevance) * ($bonuses) )"; my $rank = $relevance; @@ -1497,7 +1497,7 @@ sub postfilter_search_multi_class_fts { if ($self->api_name !~ /staff/o) { $select = <<" SQL"; - SELECT DISTINCT s.* + SELECT s.* FROM ($select) s WHERE EXISTS ( SELECT 1 @@ -1534,7 +1534,7 @@ sub postfilter_search_multi_class_fts { } else { $select = <<" SQL"; - SELECT DISTINCT s.* + SELECT s.* FROM ($select) s WHERE EXISTS ( SELECT 1 @@ -1643,7 +1643,7 @@ sub biblio_search_multi_class_fts { my $sort_dir = $args{sort_dir} || 'DESC'; my $ou = $args{org_unit}; my $ou_type = $args{depth}; - my $limit = $args{limit}; + my $limit = $args{limit} || 10; my $offset = $args{offset} || 0; if (!$ou) { @@ -1806,7 +1806,7 @@ sub biblio_search_multi_class_fts { my $bonuses = join (' * ', @bonus_lists); my $relevance = join (' + ', @rank_list); - $relevance = "SUM( ($relevance) * ($bonuses) )"; + $relevance = "AVG( ($relevance) * ($bonuses) )"; my $rank = $relevance; @@ -1883,7 +1883,7 @@ sub biblio_search_multi_class_fts { if ($self->api_name !~ /staff/o) { $select = <<" SQL"; - SELECT DISTINCT s.* + SELECT s.* FROM ($select) s WHERE EXISTS ( SELECT 1 @@ -1908,7 +1908,7 @@ sub biblio_search_multi_class_fts { } else { $select = <<" SQL"; - SELECT DISTINCT s.* + SELECT s.* FROM ($select) s WHERE EXISTS ( SELECT 1 -- 2.43.2