Postgis and EXPRESSION
Paul Ramsey
pramsey at REFRACTIONS.NET
Wed Feb 22 07:27:34 PST 2006
I think the problem is that you have both a CLASSITEM and an
EXPRESSION. CLASSITEM is generally used when you are doing single-
value classifications, so something like
CLASSITEM 'name'
CLASS
EXPRESSION 'Europe'
END
Try removing your CLASSITEM. Just general debugging technique:
remove restrictions until something shows up, then slowly add them
back in again.
BTW, If you have a unique column other than oid, I would suggest
using that for a unique number, as good practice. Perhaps you have a
gid column?
P
On 22-Feb-06, at 5:55 AM, Stefan Schwarzer wrote:
> Hi,
>
> I migrated from mysql to postgres/postgis and update now all my map-
> queries. But I have a problem getting it working. I wonder if this
> is a major problem or some minor issue. The doc says :
>
> "Logical expressions allow you to build fairly complex tests based
> on one or more attributes and therefore are only available with
> shapefiles"
>
> So, i would almost presume that using EXPRESSIONS is not possible
> via postgis. But I can't imagine that this is true... In the moment
> it runs the query but with no result - meaning that it "ignores"
> the epression. I couldn't find anything similar in the archives
> either...
>
>
> LAYER
> NAME bg_shape
> CONNECTIONTYPE postgis
> CONNECTION 'user=xxx password=xxx dbname=xxx'
> TYPE POLYGON
> DATA 'the_geom FROM (SELECT countries.the_geom AS the_geom,
> regions_view.name AS name, countries.oid AS oid FROM countries,
> regions_view WHERE countries.geo_region = regions_view.id) AS foo
> USING UNIQUE oid USING srid=-1'
> CLASSITEM 'name'
> CLASS
> NAME ''
> EXPRESSION ([name] ne 'Africa')
> OUTLINECOLOR 230 230 230
> COLOR 230 230 230
> END
> END # LAYER
>
>
> Thanks for any help!
>
> Stef
>
More information about the MapServer-users
mailing list