HI Dirk, Yes, I've already looked at it. My problem is that unfortunately I need to get all resources whose names *start* with some string, but I don't know the exact path of the file. So, I might have paths like "RequestABC20150108", "RequestABC20150201". I know they start with "RequestABC", but I don't know the rest of the path. :( :( The db has more than a million records, so getting a list of all files and processing seems too inefficient, so I need something that would access indexed data. This is preexisting code so I was looking for an easy way to fix it. If not, I would have to create an indexed value so searches are faster, or maybe have subpaths inside the db as I assume that would be faster too. Thanks! Martín. From: dk@basex.org To: ferrari_martin@hotmail.com CC: basex-talk@mailman.uni-konstanz.de Subject: Re: [basex-talk] Fastest way to get resources starting with path Date: Sat, 29 Aug 2015 00:51:52 +0200
Hello Martin,
as stated in our documentation at http://docs.basex.org/wiki/Databases#XML_Documents you can further restrict the documents in the collection via the argument.
Also, you can get all document names in a database using db:list("database") or even stricter using a path, e.g. db:list("database", "my/path").
Cheers
Dirk
On 08/28/2015 06:35 PM, Martín Ferrari wrote:
Hello: I wonder if there's a fast way to get the contents or names of the resources that start with a certain path. We have something like this:
string query = @"for $doc in collection() where substring-after(document-uri($doc), '/') = '" + documentName + @"' return $doc/Root";
But our db has millions of resources so this doesn't scale too well. I'd like a way to get the contents (or names) of resources in which the names start with a certain pattern without having to check all names. Is it possible?
The alternative would be to add a field inside the xml resources, index on it, and perform a query.
Thanks, Martín.
-- Dirk Kirsten, BaseX GmbH, http://basexgmbh.de |-- Firmensitz: Blarerstrasse 56, 78462 Konstanz |-- Registergericht Freiburg, HRB: 708285, Geschäftsführer: | Dr. Christian Grün, Dr. Alexander Holupirek, Michael Seiferle `-- Phone: 0049 7531 28 28 676, Fax: 0049 7531 20 05 22