Maxime van Noppen schrieb:
Daniel Grum wrote:
The SQL-Skript:
UPDATE einheiten_und_bewegungen
SET the_geom = (SELECT
ST_Line_SubString(ST_LineMerge(line.the_geom),(1-((Length(line.the_geom)-1000)

           /Length(line.the_geom))),1)
       FROM public.einheiten_und_bewegungen line
       WHERE length(line.the_geom)>1000
       ORDER BY line.gid);

In the table einheiten_und_bewegungen are more than one line!

Hi,

It seems that the problem of your query is that the SELECT query might
return more than a row. I thinked what you wanted to write is something
more like :

UPDATE einheiten_und_bewegungen
SET the_geom = 
ST_Line_SubString(ST_LineMerge(the_geom),(1-((Length(the_geom)-1000)/Length(the_geom))),1)
WHERE length(the_geom)>1000;

I don't see why the select is necessary. This UPDATE query will update
any row where the length of the_geom is >1000 with the formula you provided.

Super, that works...in my work I allways use the SELECT but don't think about it enough.

Know I understand what I have to do
_______________________________________________
postgis-users mailing list
[email protected]
http://postgis.refractions.net/mailman/listinfo/postgis-users

Reply via email to