Good idea to use a virtual layer for that! It is probably also more
efficient than a QGIS expression. 

Just to understand the virtual layers correctly: 

when is the query behind the virtual layer executed? 

- at every redraw? 

- once at creation? 

- at project reload? 

Aren't the virtual layers automatically updated, at least when the
project reloads? 

Are the results cached or not? 

Would also make sense to add a "update" option for a virtual layer, if
that doesn't exist yet. 

Greetings, 

Andreas 

On 2016-10-19 14:32, Nathan Woodrow wrote:

> Maybe using a virtual layer query via DB Manager will work.  You have full 
> SQL join support. Speed isn't always the best but gives you the full power of 
> SQL which is the correct way to do this IMO. 
> 
> E.g SELECT LayerA.id, COUNT(*) FROM layerA  
> JOIN layerB ON ST_WithIn(layerA.geometry, layerB.geometry) 
> GROUP BY layerA.type 
> 
> Although you can't do an update but you can make a new layer with the new 
> counts.
> 
> - Nathan 
> 
> On Wed, Oct 19, 2016 at 10:22 PM, Neumann, Andreas <a.neum...@carto.net> 
> wrote:
> 
> Well yes - but that is not a "live" point in polygon. It create separate 
> layers which need to be kept up-to-date. 
> 
> Harrissou was after a "live" point in polygon, which is automatically kept 
> up-to-date through a QGIS expression. 
> 
> Maybe Nyall knows how to write the correct aggregate expression for that? 
> 
> Greetings, 
> 
> Andreas
> 
> On 2016-10-19 14:11, Nicolas Cadieux wrote: 
> 
> Try this. 
> 
> http://www.qgistutorials.com/fr/docs/points_in_polygon.html [1] 
> 
> Nicolas 
> 
> Le 19 oct. 2016 à 06:37, DelazJ [via OSGeo.org [2]] <[hidden email]> a écrit :
> 
> Hi,
> 
> I have a polygon layer and a point one. I'd like to calculate for each 
> polygon feature, the number of points that it covers. I thought the 
> aggregates functions could help me find an easier and straight expression to 
> perform this (without creating intermediate layers) but I fail to find any 
> correct syntax. 
> 
> I tried aggregate ('mypoint', 'count', "id", intersects ($geometry, 
> geometry($currentfeature)))
> 
> And many variants of the fourth option but It always return the total of 
> points or an error. Actually this option is a filter and I wonder if i'm not 
> missing a "group by" option in the aggregate function (which seems to be the 
> appropriate one in my case). Is it possible? 
> The work around I found is to populate an ad'hoc field in the point layer 
> with overlapping polygon id, thanks to the SpatialJoin plugin, then I create 
> a one-to-many relation in the project between the two layers in other to use 
> relation_aggregate function. 
> But I expected something more direct. 
> 
> Any hint, please?
> 
> Thanks, Harrissou 
> _______________________________________________ 
> Qgis-user mailing list 
> [hidden email] 
> List info: http://lists.osgeo.org/mailman/listinfo/qgis-user [3]
> Unsubscribe: http://lists.osgeo.org/mailman/listinfo/qgis-user [3] 
> 
> -------------------------
> 
> If you reply to this email, your message will be added to the discussion 
> below: 
> http://osgeo-org.1560.x6.nabble.com/Using-aggregates-functions-to-count-intersected-features-from-another-layer-tp5291420.html
>  [4] 
> To start a new topic under Quantum GIS - User, email [hidden email] 
> To unsubscribe from Quantum GIS - User, click here.
> NAML [5] 
> 
> -------------------------
> View this message in context: Re: Using aggregates functions to count 
> intersected features from another layer [6]
> Sent from the Quantum GIS - User mailing list archive [7] at Nabble.com.
> 
> _______________________________________________
> Qgis-user mailing list
> Qgis-user@lists.osgeo.org
> List info: http://lists.osgeo.org/mailman/listinfo/qgis-user [3]
> Unsubscribe: http://lists.osgeo.org/mailman/listinfo/qgis-user [3]

_______________________________________________
Qgis-user mailing list
Qgis-user@lists.osgeo.org
List info: http://lists.osgeo.org/mailman/listinfo/qgis-user [3]
Unsubscribe: http://lists.osgeo.org/mailman/listinfo/qgis-user [3] 

  

Links:
------
[1] http://www.qgistutorials.com/fr/docs/points_in_polygon.html
[2] http://OSGeo.org
[3] http://lists.osgeo.org/mailman/listinfo/qgis-user
[4]
http://osgeo-org.1560.x6.nabble.com/Using-aggregates-functions-to-count-intersected-features-from-another-layer-tp5291420.html
[5]
http://osgeo-org.1560.x6.nabble.com/template/NamlServlet.jtp?macro=macro_viewer&amp;id=instant_html%21nabble%3Aemail.naml&amp;base=nabble.naml.namespaces.BasicNamespace-nabble.view.web.template.NabbleNamespace-nabble.view.web.template.NodeNamespace&amp;breadcrumbs=notify_subscribers%21nabble%3Aemail.naml-instant_emails%21nabble%3Aemail.naml-send_instant_email%21nabble%3Aemail.naml
[6]
http://osgeo-org.1560.x6.nabble.com/Using-aggregates-functions-to-count-intersected-features-from-another-layer-tp5291420p5291443.html
[7] http://osgeo-org.1560.x6.nabble.com/Quantum-GIS-User-f4125267.html
_______________________________________________
Qgis-user mailing list
Qgis-user@lists.osgeo.org
List info: http://lists.osgeo.org/mailman/listinfo/qgis-user
Unsubscribe: http://lists.osgeo.org/mailman/listinfo/qgis-user

Reply via email to