From 81ac40c73a116b90ac782dede5a5ed701852ac56 Mon Sep 17 00:00:00 2001 From: Sophie Meynieux Date: Wed, 10 Aug 2016 16:06:35 +0200 Subject: [PATCH] Bug 13914 : Fix UNION in SQL request for reserves statistics --- reports/reserves_stats.pl | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/reports/reserves_stats.pl b/reports/reserves_stats.pl index 792a772..f4332fc 100755 --- a/reports/reserves_stats.pl +++ b/reports/reserves_stats.pl @@ -222,7 +222,7 @@ sub calculate { ($process == 3) ? "(COUNT(DISTINCT reserves.itemnumber)) calculation" : ($process == 4) ? "(COUNT(DISTINCT reserves.biblionumber)) calculation" : '*'; $strcalc .= " - FROM reserves + FROM (select * from reserves union select * from old_reserves) reserves LEFT JOIN borrowers USING (borrowernumber) "; $strcalc .= "LEFT JOIN biblio ON reserves.biblionumber=biblio.biblionumber " @@ -267,14 +267,11 @@ sub calculate { $strcalc .= " WHERE ".join(" AND ",@sqlwhere) if (@sqlwhere); $strcalc .= " AND (".join(" OR ",@sqlor).")" if (@sqlor); $strcalc .= " GROUP BY line, col )"; - my $strcalc_old=$strcalc; - $strcalc_old=~s/reserves/old_reserves/g; - $strcalc.=qq{ UNION $strcalc_old ORDER BY line, col}; ($debug) and print STDERR $strcalc; my $dbcalc = $dbh->prepare($strcalc); push @loopfilter, {crit=>'SQL =', sql=>1, filter=>$strcalc}; @sqlparams=(@sqlparams,@sqlorparams); - $dbcalc->execute(@sqlparams,@sqlparams); + $dbcalc->execute(@sqlparams); my ($emptycol,$emptyrow); my $data = $dbcalc->fetchall_hashref([qw(line col)]); my %cols_hash; -- 1.9.1