<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<div class="moz-cite-prefix">Hi Pietro,<br>
<br>
I had the same in a project with a view. Solved it by using the
function row_number which can be used as long as it is a usual
integer: <br>
<br>
<meta http-equiv="Content-Type" content="text/html;
charset=ISO-8859-1">
<span style="font-family: Calibri; color: black;">CREATE OR
REPLACE VIEW </span><span style="font-family: Calibri; color:
black;">cadastre.districtview</span><span style="font-family:
Calibri; color: black;"> AS </span>
<br>
<span style="font-family: Calibri; color: black;">
</span><br>
<span style="font-family: Calibri; color: black;"><span
style="mso-spacerun:yes"> </span>SELECT </span><span
style="font-family: Calibri; color: black;">row_number</span><span
style="font-family: Calibri; color: black;">() OVER (ORDER BY
d.gid)::integer AS </span><span style="font-family: Calibri;
color: black;">no</span><span style="font-family: Calibri;
color: black;">, </span><span style="font-family: Calibri;
color: black;">d.districtcode</span><span style="font-family:
Calibri; color: black;">, </span><span style="font-family:
Calibri; color: black;">d.geom</span><span style="font-family:
Calibri; color: black;">, </span><span style="font-family:
Calibri; color: black;">count</span><span style="font-family:
Calibri; color: black;">(p.gid) </span><span
style="font-family: Calibri; color: black;">as</span><span
style="font-family: Calibri; color: black;"> </span><span
style="font-family: Calibri; color: black;">count</span><span
style="font-family: Calibri; color: black;"> </span><span
style="font-family: Calibri; color: black;">from</span><span
style="font-family: Calibri; color: black;"> </span><span
style="font-family: Calibri; color: black;">topo.district</span><span
style="font-family: Calibri; color: black;"> d</span>
<br>
<span style="font-family: Calibri; color: black;"><span
style="mso-spacerun:yes"> </span>LEFT JOIN </span><span
style="font-family: Calibri; color: black;">cadastre.parcel</span><span
style="font-family: Calibri; color: black;"> p ON </span><span
style="font-family: Calibri; color: black;">substring</span><span
style="font-family: Calibri; color: black;">(</span><span
style="font-family: Calibri; color: black;">p.villagecode</span><span
style="font-family: Calibri; color: black;"> </span><span
style="font-family: Calibri; color: black;">from</span><span
style="font-family: Calibri; color: black;"> 1 </span><span
style="font-family: Calibri; color: black;">for</span><span
style="font-family: Calibri; color: black;"> 4) = </span><span
style="font-family: Calibri; color: black;">d.districtcode</span><span
style="font-family: Calibri; color: black;"> Group </span><span
style="font-family: Calibri; color: black;">by</span><span
style="font-family: Calibri; color: black;"> </span><span
style="font-family: Calibri; color: black;">d.districtcode</span><span
style="font-family: Calibri; color: black;">, </span><span
style="font-family: Calibri; color: black;">d.geom</span><span
style="font-family: Calibri; color: black;">, d.gid;<br>
<br>
<br>
so something like: <br>
select row_number() over(order by geom)::integer as no,
ST_Union(ST_Buffer(geom,500) ) as geom from public.mytable group
by geom;</span><br>
<br>
should also work. <br>
<meta name="ProgId" content="PowerPoint.Slide">
<meta name="Generator" content="Microsoft PowerPoint 12">
<h1><br>
</h1>
<br>
Am 11/7/2012 8:38 AM, schrieb Pietro Rossin:<br>
</div>
<blockquote cite="mid:1352273923135-5014459.post@n6.nabble.com"
type="cite">
<pre wrap="">Hi all
I tried to load in Qgis, by using fast SQL layer, a query like this:
SELECT (select ST_Union(ST_Buffer(geom,500)) FROM public.mytable) as geom;
This query make a buffer of the features in mytable and union them in a
single polygon (if contiguous).
It works in pgadmin and in openjump but not in Qgis, because Qgis need a
unique value (integer) column coming from the query.
Of course I can make a SELECT INTO mynewtable adding a serial field "gid",
but if I have a lot of steps to perform my spatial analysis I fill my db
with a lot of temp data.
So, is there some way to make a "volatile" integer unique field in the above
query so Qgis will be happy with it ;-)?
I'm using Qgis 1.8 Postgis 2
Thanks
Pietro
--
View this message in context: <a class="moz-txt-link-freetext" href="http://osgeo-org.1560.n6.nabble.com/How-to-load-postgis-layer-without-gid-if-possible-tp5014459.html">http://osgeo-org.1560.n6.nabble.com/How-to-load-postgis-layer-without-gid-if-possible-tp5014459.html</a>
Sent from the Quantum GIS - User mailing list archive at Nabble.com.
_______________________________________________
Qgis-user mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Qgis-user@lists.osgeo.org">Qgis-user@lists.osgeo.org</a>
<a class="moz-txt-link-freetext" href="http://lists.osgeo.org/mailman/listinfo/qgis-user">http://lists.osgeo.org/mailman/listinfo/qgis-user</a>
</pre>
</blockquote>
<br>
</body>
</html>