[Koha] [Koha-devel] Extracting Frequency of a Serial From metadata

RAGHAV ARORA f20171016 at pilani.bits-pilani.ac.in
Tue Jul 2 15:58:08 NZST 2019


Thank you sir,
I will try this out and let you know.

Regards
*Raghav Arora*
Sophomore, M.Sc (Hons) Chemistry BE Electrical and Electronics Engineering
Contact : (+91) 9897597761
Personal Email <raghavarora999 at yahoo.in> | University Email
<f20171016 at pilani.bits-pilani.ac.in>
LinkedIn <https://www.linkedin.com/in/raghav-arora-9820a648/> |  GitHub
<https://github.com/RAraghavarora/>

▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
*Birla Institute of Technology and Science, Pilani*
Pilani campus,
Rajasthan-333031


On Mon, Jul 1, 2019 at 4:53 PM Pasi Kallinen <pasi.kallinen at koha-suomi.fi>
wrote:

>
> Those locates really made it look too complex. I'd rather use ExtractValue
> to get the MARC field values, perhaps something along these lines:
>
> select ExtractValue(metadata,
> '//datafield[@tag="310"]/subfield[@code="a"]') as frequency from
> biblio_metadata where ExtractValue(metadata,
> 'count(//datafield[@tag="310"]/subfield[@code="a"])') > 0;
>
>
> --
> Pasi Kallinen
> Koha-Suomi oy
> +358 400 174 235
>
>
>
> Jul 1, 2019, 1:26 PM by f20171016 at pilani.bits-pilani.ac.in:
>
> > Hello everyone,
> > The SQL query to get the frequency for different serials was given on
> the KOHA SQL Library as :
> >                        SELECT
> >                         IF
> >                         (   LOCATE('<datafield tag="310"',
> biblio_metadata.metadata) = 0
> >                                 OR
> >                             LOCATE('<subfield code="a">',
> biblio_metadata.metadata, LOCATE('<datafield tag="310"',
> biblio_metadata.metadata)) = 0
> >                                 OR
> >                             LOCATE('<subfield code="a">',
> biblio_metadata.metadata, LOCATE('<datafield tag="310"',
> biblio_metadata.metadata))
> >                                 > LOCATE('</datafield>',
> biblio_metadata.metadata, LOCATE('<datafield tag="310"',
> biblio_metadata.metadata)),
> >                         '',
> >                         SUBSTRING( biblio_metadata.metadata,
> >                             LOCATE('<subfield code="a">',
> biblio_metadata.metadata, LOCATE('<datafield tag="310"',
> biblio_metadata.metadata)) + 19,
> >                             LOCATE('</subfield>',
> biblio_metadata.metadata, LOCATE('<subfield code="a">',
> biblio_metadata.metadata,
> >                                 LOCATE('<datafield tag="310"',
> biblio_metadata.metadata)) + 19)
> >                                 -
> >                             (LOCATE('<subfield
> code="a">',biblio_metadata.metadata, LOCATE('<datafield tag="310"',
> biblio_metadata.metadata)) + 19)
> >                             )
> >                         )
> >                     AS FREQUENCY
> >
> > When I run this query, it gives the output like 54/yr for some journals,
> which is correct, but for some, it returns something like 'M', '0', 'FN',
> 'SM', '#N/A', etc.
> > Can someone please help me understand what should be the correct SQL
> query?
> >
> > Thanks in advance
> > Regards
> > Raghav Arora
> > Sophomore, M.Sc (Hons) Chemistry BE Electrical and Electronics
> Engineering
> > Contact : (+91) 9897597761, 8474975691
> > Personal Email <mailto:raghavarora999 at yahoo.in>>  | > University Email
> <mailto:f20171016 at pilani.bits-pilani.ac.in>
> > LinkedIn <https://www.linkedin.com/in/raghav-arora-9820a648/>>  |  >
> GitHub <https://github.com/RAraghavarora/>>
> >
> > ▄▄▄▄▄▄▄▄▄▄▄▄> ▄▄▄▄▄▄▄▄▄▄▄▄▄> ▄▄▄▄▄▄▄▄▄▄▄▄
> > Birla Institute of Technology and Science, Pilani
> > Pilani campus,
> > Rajasthan-333031
> >
>
>


More information about the Koha mailing list