Statistikk i Mikromarc 2 - Egendefinerte: Forskjell mellom sideversjoner

Fra Mikromarc Wiki
Hopp til navigeringHopp til søk
Ingen redigeringsforklaring
Ingen redigeringsforklaring
Linje 5: Linje 5:


<code><pre>
<code><pre>
/*
Denne rapporten gir en liste over de titlene som er mest utlånt (inkludert fornyet) i tidsperioden.
Titlene grupperes på tittel, forfatter og materialtype, slik at forskjellige utgivelser av samme verk vil summeres.
Kun de med mer enn 50 lån blir vist. Dette kan endres i linjen HAVING "Utlån" > 50
Linjen WHERE Service_Code in (8,9) kan erstattes med WHERE Service_Code = 8 for å kun telle utlån
Utvalg går på viewet MarcHist, som er et utdrag av en kombinasjon av Service_History og Marc_Record.
Datoene er for utlånstid, enhetene er hvor utlåner/fornyelsen skjedde
*/
SELECT Title AS "Tittel", Author AS "Forfatter",  
SELECT Title AS "Tittel", Author AS "Forfatter",  
Doctype AS "Materialbetegnelse", count(*) AS "Utlån"
Doctype AS "Materialbetegnelse", count(*) AS "Utlån"
Linje 17: Linje 25:
===Utlån (inkl. fornyelser) på topp - Forfatter (> 50 lån)===
===Utlån (inkl. fornyelser) på topp - Forfatter (> 50 lån)===
<code><pre>
<code><pre>
/*
Denne rapporten gir en liste over de forfatterne som er mest utlånt (inkludert fornyet) i tidsperioden.
Kun de med mer enn 50 lån blir vist. Dette kan endres i linjen HAVING "Utlån" > 50
Linjen WHERE Service_Code in (8,9) kan erstattes med WHERE Service_Code = 8 for å kun telle utlån
Utvalg går på viewet MarcHist, som er et utdrag av en kombinasjon av Service_History og Marc_Record.
Datoene er for utlånstid, enhetene er hvor utlåner/fornyelsen skjedde
*/
SELECT Author AS "Forfatter", count(*) AS "Utlån"
SELECT Author AS "Forfatter", count(*) AS "Utlån"
FROM marchist
FROM marchist
Linje 28: Linje 43:
===Hyllevarmere - Titler uten utlån i perioden===
===Hyllevarmere - Titler uten utlån i perioden===
<code><pre>
<code><pre>
/*
Denne rapporten gir en oversikt over titler som ikke har hatt noen eksemplar på utlån i perioden.
Slettede (slettemerkede) poster vises ikke.
Ved å sette perioden frem i tid vil alle poster komme med på rapporten hvis det er ønskelig
Datofilteret går mot utlånsdato, øvrige filtere går mot eksemplar og post.
*/
SELECT pm_value11 as "Hylle", Pm_Value2 AS "Forfatter",  
SELECT pm_value11 as "Hylle", Pm_Value2 AS "Forfatter",  
Pm_Value1 AS "Tittel",  Pm_Value4 AS Utgitt
Pm_Value1 AS "Tittel",  Pm_Value4 AS Utgitt
Linje 62: Linje 83:
</pre></code>
</pre></code>


===Lånere - Antall nye lånere i perioden===
===Lånere - Antall nye lånere i perioden fordelt på lånergruppe===
<code><pre>
<code><pre>
SELECT
SELECT

Sideversjonen fra 21. nov. 2008 kl. 04:56

Her finner du en del script som kan legges inn for å hente ut en statistikk for blant annet å markedsføre biblioteket. Disse scriptene kan kun kjøres fra Utlånsstatistikk.

Utlån (inkl. fornyelser) på topp - Titler (> 50 lån)

/* 
Denne rapporten gir en liste over de titlene som er mest utlånt (inkludert fornyet) i tidsperioden. 
Titlene grupperes på tittel, forfatter og materialtype, slik at forskjellige utgivelser av samme verk vil summeres.
Kun de med mer enn 50 lån blir vist. Dette kan endres i linjen HAVING "Utlån" > 50 
Linjen WHERE Service_Code in (8,9) kan erstattes med WHERE Service_Code = 8 for å kun telle utlån
Utvalg går på viewet MarcHist, som er et utdrag av en kombinasjon av Service_History og Marc_Record. 
Datoene er for utlånstid, enhetene er hvor utlåner/fornyelsen skjedde
*/
SELECT Title AS "Tittel", Author AS "Forfatter", 
Doctype AS "Materialbetegnelse", count(*) AS "Utlån"
FROM marchist
WHERE Service_Code in (8,9)
:AddFilter
GROUP BY  "Tittel", "Forfatter", "Materialbetegnelse"
HAVING "Utlån" > 50
ORDER BY "Utlån" DESC

Utlån (inkl. fornyelser) på topp - Forfatter (> 50 lån)

/*
Denne rapporten gir en liste over de forfatterne som er mest utlånt (inkludert fornyet) i tidsperioden. 
Kun de med mer enn 50 lån blir vist. Dette kan endres i linjen HAVING "Utlån" > 50 
Linjen WHERE Service_Code in (8,9) kan erstattes med WHERE Service_Code = 8 for å kun telle utlån
Utvalg går på viewet MarcHist, som er et utdrag av en kombinasjon av Service_History og Marc_Record. 
Datoene er for utlånstid, enhetene er hvor utlåner/fornyelsen skjedde
*/
SELECT Author AS "Forfatter", count(*) AS "Utlån"
FROM marchist
WHERE Service_Code in (8,9)
:AddFilter
GROUP BY  "Forfatter"
HAVING "Utlån" > 50
ORDER BY "Utlån" DESC

Hyllevarmere - Titler uten utlån i perioden

/*
Denne rapporten gir en oversikt over titler som ikke har hatt noen eksemplar på utlån i perioden.
Slettede (slettemerkede) poster vises ikke.
Ved å sette perioden frem i tid vil alle poster komme med på rapporten hvis det er ønskelig
Datofilteret går mot utlånsdato, øvrige filtere går mot eksemplar og post. 
*/
SELECT pm_value11 as "Hylle", Pm_Value2 AS "Forfatter", 
Pm_Value1 AS "Tittel",  Pm_Value4 AS Utgitt
FROM Marc_Record
WHERE Marc_Record.isscrapped = 0 
and Marc_Record.Marc_id NOT IN (SELECT Marc_id FROM 
Service_History WHERE Service_Time >= ':AddFilterFromDate' 
AND Service_Time <= ':AddFilterToDate' and service_code in (8,9))
:AddFilterUnit :AddFilter
ORDER BY "Hylle", "Tittel",  "Forfatter" , "Utgitt"


Hyllevarmere - Eksemplar uten utlån i perioden

SELECT (select pm_value1 from marc_record where marc_id = c.marc_id) AS Tittel 
-- Merk at den Tittel hentes som sub-select kun for å få brukt marc_record i første select. Det er for at :AddFilter skal slå inn på denne og ikke på første egentlige (sub-)select som er mot service_history lenger ned. 
, Pm_Value2 AS Forfatter, Pm_Value4 AS Utgitt,
getshelfmark(C.ex_id) as Hylle,
C.bar_code AS Strekkode,
C.Reg_date as "Reg dato",
(SELECT Description FROM Copy_status WHERE Code = C.Status_code) AS Status,
(select date(max(service_time)) from service_history where service_code = 8 and service_history.ex_id = c.ex_id) as "Sist utlånt",
(select count(1) from service_history where service_code in (8) and service_history.ex_id = c.ex_id) as "Antall utlån"
FROM Marc_Record KEY JOIN Copy C
WHERE Marc_record.IsScrapped = 0 
AND Marc_record.Reg_Date < GetDate() - 365 
AND C.Permit_Loan = 1 
AND C.Is_scrapped = 0
AND C.status_code <> 2
AND NOT EXISTS (SELECT 1 FROM Service_History WHERE service_code = 8 and Service_Time > ':AddFilterFromDate' AND Service_Time <= ':AddFilterToDate' AND ex_id = c.ex_id) 
:AddFilterUnit :AddFilter
Order by Hylle, Forfatter, Tittel, marc_record.marc_id, "Antall utlån"

Lånere - Antall nye lånere i perioden fordelt på lånergruppe

SELECT
lg.grp_code as "Lånergruppe", 
count(*) as Antall
FROM loaner key join loaner_group lg
WHERE reg_date >= ':AddFilterFromDate' and reg_date <= ':AddFilterToDate' 
:AddFilter 
group by "Lånergruppe"
order by "Lånergruppe"