Hello all,
I'm scanning millions of XML records imported from CSV looking for instances of 'bib_rec_id' which are non-numeric. Which of these two is if-statements likely to complete earlier?
for $a in (/csv/record/bib_rec_id) return if ($a castable as xs:integer) then ... blah
or
if (matches($a, '^[0-9]+$')) then ... blah
Yes - I'm trying it out now, but I suspect it will be quicker to ask than wait for either query to complete.
TIA.
________________________________
Elsevier B.V. Registered Office: Radarweg 29, 1043 NX Amsterdam, The Netherlands, Registration No. 33156677, Registered in The Netherlands.
Hello Constantine,
Why don't you try it out on a smaller subset (for $a in (/csv/record/bib_rec_id[position() < 1000)?
My guess is the cast is faster, but when you try it you will now for sure.
Cheers, Dirk
On 03/04/14 17:32, Hondros, Constantine (ELS-AMS) wrote:
Hello all,
I'm scanning millions of XML records imported from CSV looking for instances of 'bib_rec_id' which are non-numeric. Which of these two is if-statements likely to complete earlier?
for $a in (/csv/record/bib_rec_id) return if ($a castable as xs:integer) then ... blah
or
if (matches($a, '^[0-9]+$')) then ... blah
Yes - I'm trying it out now, but I suspect it will be quicker to ask than wait for either query to complete.
TIA.
Elsevier B.V. Registered Office: Radarweg 29, 1043 NX Amsterdam, The Netherlands, Registration No. 33156677, Registered in The Netherlands.
BaseX-Talk mailing list BaseX-Talk@mailman.uni-konstanz.de https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk
basex-talk@mailman.uni-konstanz.de