update osm_line set namede=name where namede is null;
update osm_point set namede=name where namede is null;
update osm_polygon set namede=name where namede is null;
update osm_roads set namede=name where namede is null;
namede ist die Spalte, in die ich den name:de Tag importiert habe (default.style ist um den name:de Wert egänzt). Im Postprocessing wird die Spalte name:de in namede umbenannt da ich sonst Probleme mit dem “:” habe.
Als Ergebnis soll dann, wenn es in OSM keinen Wert für name:de= gibt, der von name= in name:de (namede) reinkopiert werden.
Danke Walter. : ist ein reserviertes Zeichen in Mapserver und das LABELITEM “namede” steht schon in Anführungszeichen, also in der Query gehts, dann habe ich name:de als Variable, die ich nicht auswerten kann. Habe mehrere Sachen probiert, aber es ging nicht. Ist nicht weiter tragisch, das umbenennen geht problemlos & fix.
Eine andere Sache ging mir eben noch durch den Kopf. Wenn name=null ist und auch namede=null, was ja für viele Objekte der Fall ist, kopiert der ja bei allen Objekten die null rüber.
Kann man das so erweitern?
update osm_line set namede=name where namede is null and name is not null;
na ja, rendern ist -noch- nicht mein Bier; ich hab die Frage halt auf reines SQL bezogen.
Dass Mapserver mit den Tabellennamen vom osm2pgsql-schema nicht klarkommt, erscheint mit etwas “komisch”. Aber den kenn ich halt nicht. Nur etwas mapnik.
jo, sollte so sein.
bei komplexeren logschen abfragen - z.b mit OR- sollte man sicherheitshalber Klammern setzen, sonst gibt es ganz fiese Ergebnisse.
Die Spalte “name:de” gehört ja auch nicht zum Standardstyle von osm2pgsql. Wenn SunCobalt da was hinzufügt, muß er schon selber auf die Akzeptanz bei der Rendersoftware achten.