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,...')
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.
Best regards,
--
--------------------------------------------------------------------
Andreas Albarello
Analysis & SW Development
Territorium Online srl/GmbH
Via Buozzi/Buozzistraße 12 - I 39100 Bolzano/Bozen
email: [EMAIL PROTECTED]
web: www.territoriumonline.com
--------------------------------------------------------------------