LP#1549505: Always use active_date for copy-circ-percent, and only count non-deleted...
authorMike Rylander <mrylander@gmail.com>
Wed, 16 Mar 2016 20:52:04 +0000 (16:52 -0400)
committerMike Rylander <mrylander@gmail.com>
Wed, 16 Mar 2016 20:52:04 +0000 (16:52 -0400)
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Open-ILS/src/sql/Pg/upgrade/XXXX.schema.statisitcal-ratings.sql

index 3f8570d..25b9199 100644 (file)
@@ -901,7 +901,7 @@ BEGIN
             SUM(COALESCE(circ_time,0))::NUMERIC / SUM(age)::NUMERIC
       FROM  (SELECT cn.record AS bib,
                     cp.id,
-                    EXTRACT( EPOCH FROM AGE(COALESCE(cp.active_date, cp.create_date)) ) + 1 AS age,
+                    EXTRACT( EPOCH FROM AGE(cp.active_date) ) + 1 AS age,
                     SUM(  -- time copy spent circulating
                         EXTRACT(
                             EPOCH FROM
@@ -928,6 +928,9 @@ BEGIN
                         )
                     )
               WHERE cn.owning_lib = ANY (badge.orgs)
+                    AND cp.active_date IS NOT NULL
+                    -- Next line requires that copies with no circs (circ.id IS NULL) also not be deleted
+                    AND ((circ.id IS NULL AND NOT cp.deleted) OR circ.id IS NOT NULL)
               GROUP BY 1,2,3
             ) x
       GROUP BY 1;