Код: Выделить всё
select 1 as id, st_difference(st_buffer(st_point(0,0), 50000), (select geometry from sometable where id=1542)) as geometry
При этом запрос возвращает искомые поля id и геометрии, ошибка возникает когда я пытаюсь подгрузить результаты запроса как слой.Errornous query: SELECT DISTINCT CASE WHEN upper(geometrytype("geom")) IN ('POINT','MULTIPOINT','POINTM','MULTIPOINTM') THEN 'POINT' WHEN upper(geometrytype("geom")) IN ('LINESTRING','MULTILINESTRING','LINESTRINGM','MULTILINESTRINGM') THEN 'LINESTRING' WHEN upper(geometrytype("geom")) IN ('POLYGON','MULTIPOLYGON','POLYGONM','MULTIPOLYGONM') THEN 'POLYGON' END, srid("geom") FROM ""."" returned 7 [ERROR: zero-length delimited identifier at or near """"
LINE 1: ...'MULTIPOLYGONM') THEN 'POLYGON' END, srid("geom") FROM "".""
^
]
То же самое происходит даже если запрос не содержит обращения к таблицам postgresql, например select 1 as id, st_point(0,0) as geom.
Откатываюсь на версию qgis-dev-1.9.90-33 - все работает.
Использую PostgreSQL 8.4.8 + PostGIS 1.5