Hello Andreas, Andreas Albarello <[EMAIL PROTECTED]>, [20070913 - 12:22:22]
> Stephan Holl wrote: > > I have a problem using the FILTER inside a shape-layer. It turns out > > that the filters are getting quite slow when using more than ~500 > > or-validations. > > > > The filter gets applied by mapscript based on an > > external-database query-result. Are there some tuning-tipps how to > > 'filter' (shape)-datasets with large results efficient? > > > > Currently the filter looks like this > > LAYER > > DATA "adr" > > FILTER ( [adr_id] = 6446 OR [adr_id] = 6366 OR [adr_id] = > > 6483 OR [adr_id] = 6534 OR [adr_id] = 6535 OR [adr_id] = 6481 OR > > [adr_id] = 6489 OR [adr_id] = 6490 OR [adr_id] = 6478 OR [adr_id] = > > 6587 OR [adr_id] = 6484 OR [adr_id] > > [many more follow] > > Stephan, > > I've never done any benchmarking of this stuff myself, so I really > don't know if this is going to be of any advantage, but you might try > to use this syntax which should yield to the exact same results but > is much more concise and should therefore at least take less parsing > effort by Mapserver: > > FILTER ([adr_id] IN '6446,6366,6483,...') Thanks for the tip, but unfortunately it does not solve my problem. The filter does not get applied, it does not show up at all with your syntax above. > This is actually some sort of undocumented query syntax, so don't > tell anybody ;) > > I'd appreciate it if you'd report back whether this actually was of > any help or not. Sure, bute no success yet! I will play with the filter a little more though. Best regards Stephan -- Stephan Holl <[EMAIL PROTECTED]>, http://intevation.de/~stephan Tel: +49 (0)541-33 50 8 32 | Intevation GmbH | AG Osnabrück - HR B 18998 Geschäftsführer: Frank Koormann, Bernhard Reiter, Dr. Jan-Oliver Wagner