[QGIS-it-user] QGIS - select in join (tabella in relazione)

Salve a tutti,
scrivo questa email sperando di trovare una soluzione al quesito in oggetto.

In QGIS è possibile fare un join tra una layer (vettore o non) e una
qualsiasi altro layer (anche semplice tabella) basta che ci sia un campo
comune; su questo join è possibile fare selezioni e quindi zoom a selezione;
ma se al posto del join facessi una relazione 1:n NON è più possibile fare
una selezione partendo dalla tabella lato n, questo è un grosso limite in
quanto NON è possibile neanche usando spatialite o postgis.

Domanda, come mai NON è stata implementata questa feature in QGIS? credo sia
una caratteristica molto utile.

Esempio:
supponiamo di fare un censimento della pubblica illuminazione e creo un
layer puntuale che rappresenti il palo e una tabella che rappresenti le
armature (un palo può avere da 1 a 'n' armature) del palo stesso; in questo
caso specifico utilizzerei una relazione tra palo e armature; se facessi una
ricerca nella tabella armature, come selezionare il relativo palo?

questo è un semplice caso per spiegare l'utilità della feature che manca in
QGIS e credo in tutti i software GIS.

saluti

--
View this message in context: http://osgeo-org.1560.x6.nabble.com/QGIS-select-in-join-tabella-in-relazione-tp5317093.html
Sent from the QGIS Italian User mailing list archive at Nabble.com.

Il 12/04/2017 22:16, Totò ha scritto:

Salve a tutti,
scrivo questa email sperando di trovare una soluzione al quesito in oggetto.

In QGIS è possibile fare un join tra una layer (vettore o non) e una
qualsiasi altro layer (anche semplice tabella) basta che ci sia un campo
comune; su questo join è possibile fare selezioni e quindi zoom a selezione;
ma se al posto del join facessi una relazione 1:n NON è più possibile fare
una selezione partendo dalla tabella lato n, questo è un grosso limite in
quanto NON è possibile neanche usando spatialite o postgis.

Domanda, come mai NON è stata implementata questa feature in QGIS? credo sia
una caratteristica molto utile.

Esempio:
supponiamo di fare un censimento della pubblica illuminazione e creo un
layer puntuale che rappresenti il palo e una tabella che rappresenti le
armature (un palo può avere da 1 a 'n' armature) del palo stesso; in questo
caso specifico utilizzerei una relazione tra palo e armature; se facessi una
ricerca nella tabella armature, come selezionare il relativo palo?

questo è un semplice caso per spiegare l'utilità della feature che manca in
QGIS e credo in tutti i software GIS.

saluti

--
View this message in context: http://osgeo-org.1560.x6.nabble.com/QGIS-select-in-join-tabella-in-relazione-tp5317093.html
Sent from the QGIS Italian User mailing list archive at Nabble.com.
_______________________________________________
QGIS-it-user mailing list
QGIS-it-user@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-it-user

Buongiorno, incuriosito dalla tua problematica ho fatto qualche prova, creato un layer puntuale "Pali" e una tabella "Armature" di cui condividono l'Id del palo.

Effettivamente il join produce solo layer tabella virtuali che non visualizzano nulla.

Tuttavia, senza join alcuno, con il DB manager riesco a produrre un layer virtuale puntuale per ogni selezione di armatura, il problema è che si produce un layer per ogni interrogazione (armatura) diversa.

La query è del tipo

"SELECT "Pali"."ID", "Pali"."geometry","Armature"."armatura"
FROM "Pali", "Armature"
WHERE "Armature"."palo"="Pali"."ID" and "Armature"."armatura"='b'

E' necessario portarsi dietro la geometria dai pali altrimenti otteniamo una tabella virtuale come nel join.

E' un risultato ma dubito che possa risolvere dinamicamente la questione.

Saluti

Ciao Totò,

per quanto ne sappia io:

Totò wrote

ma se al posto del join facessi una relazione 1:n NON è più possibile fare
una selezione partendo dalla tabella lato n, questo è un grosso limite in
quanto NON è possibile neanche usando spatialite o postgis.

... a meno che non stiamo parlando di cose diverse (e ho capito male), con
SpatiaLite o PostGIS, essndo DBMS relazionali, è possibile!

Totò wrote

questo è un semplice caso per spiegare l'utilità della feature che manca
in QGIS e credo in tutti i software GIS.

Mi pare che con il "concorrente" ArcXXX sia possibile.

Cari saluti
Nino

--
View this message in context: http://osgeo-org.1560.x6.nabble.com/QGIS-select-in-join-tabella-in-relazione-tp5317093p5317148.html
Sent from the QGIS Italian User mailing list archive at Nabble.com.

/
Totò wrote

NON è più possibile fare una selezione partendo dalla tabella lato n

/

Da come l'ho capita io, il problema di Toto' e' il seguente.

Avendo 4 pali con attributi "armatura" da join:

palo 1] armatura PIPPO
palo 2] armatura PLUTO
palo 3] armatura PIPPO e armatura PAPERINO
palo 4] armatura TOPOLINO

lui vuole selezionare i pali 1,3 cercando il solo nome PIPPO.

Se cosi' stanno le cose, francamente non saprei quale Gis sia in grado di
eseguire un simile filtro "a ritroso"...

--
View this message in context: http://osgeo-org.1560.x6.nabble.com/QGIS-select-in-join-tabella-in-relazione-tp5317093p5317190.html
Sent from the QGIS Italian User mailing list archive at Nabble.com.

il quesito è stato posto su ‘thespatialcommunity.slack.com’ e Nathan Woodrow (uno dei massimi esperti e sviluppatori QGIS) ha detto che NON è possibile farlo con QGIS.

A mio avviso sarebbe una feature molto utile ma come accade spesso occorre raccogliere dei fonti per farla sviluppare.
Io sono disposto a contribuire, ma da solo non posso farlo!!!

saluti

···

Il giorno 13 aprile 2017 13:51, AV <antoniovinci@wp.pl> ha scritto:

/
Totò wrote

NON è più possibile fare una selezione partendo dalla tabella lato n

/

Da come l’ho capita io, il problema di Toto’ e’ il seguente.

Avendo 4 pali con attributi “armatura” da join:

palo 1] armatura PIPPO
palo 2] armatura PLUTO
palo 3] armatura PIPPO e armatura PAPERINO
palo 4] armatura TOPOLINO

lui vuole selezionare i pali 1,3 cercando il solo nome PIPPO.

Se cosi’ stanno le cose, francamente non saprei quale Gis sia in grado di
eseguire un simile filtro “a ritroso”…


View this message in context: http://osgeo-org.1560.x6.nabble.com/QGIS-select-in-join-tabella-in-relazione-tp5317093p5317190.html

Sent from the QGIS Italian User mailing list archive at Nabble.com.


QGIS-it-user mailing list
QGIS-it-user@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-it-user

Salvatore Fiandaca
mobile.:+39 327.493.8955
m: pigrecoinfinito@gmail.com
blog:**** https://pigrecoinfinito.wordpress.com/

43°51’0.54"N 10°34’27.62"E - EPSG:4326

“Se la conoscenza deve essere aperta a tutti,
perchè mai limitarne l’accesso?”
R. Stallman

Certo poterlo fare direttamente in QGIS sarebbe comodo.
Ma eventualmente, uno queste cose se le risolve usando le query (con LEFT
JOIN) in un geoDB, ovviamente abbandonando gli shapefile.

Forse è per questo motivo che, non è stato pensato di implementarlo fin ad
ora !?

Saluti
Nino

--
View this message in context: http://osgeo-org.1560.x6.nabble.com/QGIS-select-in-join-tabella-in-relazione-tp5317093p5317204.html
Sent from the QGIS Italian User mailing list archive at Nabble.com.

----- Messaggio originale -----

Da: "AV" <antoniovinci@wp.pl>
A: qgis-it-user@lists.osgeo.org
Inviato: Giovedì, 13 aprile 2017 13:51:14
Oggetto: Re: [QGIS-it-user] QGIS - select in join (tabella in relazione)

/
Totò wrote

NON è più possibile fare una selezione partendo dalla tabella lato n

/

Da come l'ho capita io, il problema di Toto' e' il seguente.

Avendo 4 pali con attributi "armatura" da join:

palo 1] armatura PIPPO
palo 2] armatura PLUTO
palo 3] armatura PIPPO e armatura PAPERINO
palo 4] armatura TOPOLINO

lui vuole selezionare i pali 1,3 cercando il solo nome PIPPO.

Se cosi' stanno le cose, francamente non saprei quale Gis sia in grado di
eseguire un simile filtro "a ritroso"...

Esri ArcView3 lo fa da un paio di decine di anni....non con join ma con il link (relate)
Il bello è che puoi linkare le tabelle nei due versi (1:n ed n:1) allo stesso tempo, senza generare "loop".
marco

Nino,
NON credo sia possibile farlo neanche con DB relazionali e poi dovresti fare ogni volta una view diversa.
Il mio obiettivo è usare il tasto funzione F3 nella tabella correlata e poi tramite semplice selezione del record poter zoomare la relativa feature.

···

2017-04-13 15:44 GMT+02:00 nformica <ninofor60@gmail.com>:

Certo poterlo fare direttamente in QGIS sarebbe comodo.
Ma eventualmente, uno queste cose se le risolve usando le query (con LEFT
JOIN) in un geoDB, ovviamente abbandonando gli shapefile.

Forse è per questo motivo che, non è stato pensato di implementarlo fin ad
ora !?

Saluti
Nino


View this message in context: http://osgeo-org.1560.x6.nabble.com/QGIS-select-in-join-tabella-in-relazione-tp5317093p5317204.html

Sent from the QGIS Italian User mailing list archive at Nabble.com.


QGIS-it-user mailing list
QGIS-it-user@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-it-user

Salvatore Fiandaca
mobile.:+39 327.493.8955
m: pigrecoinfinito@gmail.com
blog:**** https://pigrecoinfinito.wordpress.com/

43°51’0.54"N 10°34’27.62"E - EPSG:4326

“Se la conoscenza deve essere aperta a tutti,
perchè mai limitarne l’accesso?”
R. Stallman

In effetti il link è una funzionalità che sul vecchio AV risultava molto utile e di cui a volte ne sento anch’io la mancanza.
Penso che la prima cosa sia aprire una feature request ben descritta. Se di interesse comune si potrebbe finanziare con una raccolta fondi ad hoc, magari tramite il gruppo QGIS Italia.

a presto
Luca

···

Il giorno 13 aprile 2017 14:13, Totò Fiandaca <pigrecoinfinito@gmail.com> ha scritto:

il quesito è stato posto su ‘thespatialcommunity.slack.com’ e Nathan Woodrow (uno dei massimi esperti e sviluppatori QGIS) ha detto che NON è possibile farlo con QGIS.

A mio avviso sarebbe una feature molto utile ma come accade spesso occorre raccogliere dei fonti per farla sviluppare.
Io sono disposto a contribuire, ma da solo non posso farlo!!!

saluti


QGIS-it-user mailing list
QGIS-it-user@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-it-user

Il giorno 13 aprile 2017 13:51, AV <antoniovinci@wp.pl> ha scritto:

/
Totò wrote

NON è più possibile fare una selezione partendo dalla tabella lato n

/

Da come l’ho capita io, il problema di Toto’ e’ il seguente.

Avendo 4 pali con attributi “armatura” da join:

palo 1] armatura PIPPO
palo 2] armatura PLUTO
palo 3] armatura PIPPO e armatura PAPERINO
palo 4] armatura TOPOLINO

lui vuole selezionare i pali 1,3 cercando il solo nome PIPPO.

Se cosi’ stanno le cose, francamente non saprei quale Gis sia in grado di
eseguire un simile filtro “a ritroso”…


View this message in context: http://osgeo-org.1560.x6.nabble.com/QGIS-select-in-join-tabella-in-relazione-tp5317093p5317190.html

Sent from the QGIS Italian User mailing list archive at Nabble.com.


QGIS-it-user mailing list
QGIS-it-user@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-it-user

Salvatore Fiandaca
mobile.:+39 327.493.8955
m: pigrecoinfinito@gmail.com
blog:**** https://pigrecoinfinito.wordpress.com/

43°51’0.54"N 10°34’27.62"E - EPSG:4326

“Se la conoscenza deve essere aperta a tutti,
perchè mai limitarne l’accesso?”
R. Stallman

Scusate forse non ho ben capito la cosa che a me pare molto semplice in un DB relazionale…

Personalmente non la userei mai in un GIS (nemmeno se ci fosse la funzione) perchè fare join del genere con uno shape file di grosse dimensioni risulterebbe difficile (vedo già il pc impiccato)…

Io attuerei una soluzione ibrida.

Cioè farei una tabella (o vista se preferite ma a me le viste piacciono poco sempre per ragioni prestazionali) con un bel JOIN in postgresql. A questo punto caricherei la tabella in qgis e procederei facendo le select sulla tabella… Se cerco il palo XY mi tirerà fuori tutte le armature ad esso associate. In pratica avrò lo stesso palo (e relativa geometria) per 5 volte con 5 armature diverse.

Se volessi farlo tutto dentro db sarebbe una banale sub-query a cui cambio ogni volta la clausola where della query di ordine superiore.

Volendo, se le armature univoche non sono tantissime, con una serie di CASE e sub-query è possibile anche evitare la duplicazione del dato relativo al palo ma questo diventa macchinoso e a meno di non usarlo molto spesso non lo farei.

Saluti

SG

···

Il giorno 13 aprile 2017 16:16, Luca Lanteri <lklanteri@gmail.com> ha scritto:

In effetti il link è una funzionalità che sul vecchio AV risultava molto utile e di cui a volte ne sento anch’io la mancanza.
Penso che la prima cosa sia aprire una feature request ben descritta. Se di interesse comune si potrebbe finanziare con una raccolta fondi ad hoc, magari tramite il gruppo QGIS Italia.

a presto

Luca


QGIS-it-user mailing list
QGIS-it-user@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-it-user

Il giorno 13 aprile 2017 14:13, Totò Fiandaca <pigrecoinfinito@gmail.com> ha scritto:

il quesito è stato posto su ‘thespatialcommunity.slack.com’ e Nathan Woodrow (uno dei massimi esperti e sviluppatori QGIS) ha detto che NON è possibile farlo con QGIS.

A mio avviso sarebbe una feature molto utile ma come accade spesso occorre raccogliere dei fonti per farla sviluppare.
Io sono disposto a contribuire, ma da solo non posso farlo!!!

saluti


QGIS-it-user mailing list
QGIS-it-user@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-it-user

Il giorno 13 aprile 2017 13:51, AV <antoniovinci@wp.pl> ha scritto:

/
Totò wrote

NON è più possibile fare una selezione partendo dalla tabella lato n

/

Da come l’ho capita io, il problema di Toto’ e’ il seguente.

Avendo 4 pali con attributi “armatura” da join:

palo 1] armatura PIPPO
palo 2] armatura PLUTO
palo 3] armatura PIPPO e armatura PAPERINO
palo 4] armatura TOPOLINO

lui vuole selezionare i pali 1,3 cercando il solo nome PIPPO.

Se cosi’ stanno le cose, francamente non saprei quale Gis sia in grado di
eseguire un simile filtro “a ritroso”…


View this message in context: http://osgeo-org.1560.x6.nabble.com/QGIS-select-in-join-tabella-in-relazione-tp5317093p5317190.html

Sent from the QGIS Italian User mailing list archive at Nabble.com.


QGIS-it-user mailing list
QGIS-it-user@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-it-user

Salvatore Fiandaca
mobile.:+39 327.493.8955
m: pigrecoinfinito@gmail.com
blog:**** https://pigrecoinfinito.wordpress.com/

43°51’0.54"N 10°34’27.62"E - EPSG:4326

“Se la conoscenza deve essere aperta a tutti,
perchè mai limitarne l’accesso?”
R. Stallman

Sergio Gollino

Questo messaggio, comprensivo di eventuali allegati, è ad uso esclusivo del destinatario e potrebbe contenere informazioni riservate; se è stato recapitato per errore ci scusiamo per l’accaduto e Vi invitiamo cortesemente a darcene notizia provvedendo alla sua distruzione.

Vi ricordiamo che la diffusione, l’utilizzo e/o la conservazione dei dati ricevuti per errore costituiscono violazione alle disposizioni del D.Lgs. n. 196/2003 “Codice in materia di protezione dei dati personali”.

ecco una soluzione intelligente al problema [0], risolto velocemente da Andrea Borruso con una semplice Azione Python;

continuo a stupirmi come una cosa cosi utile ed importante NON sia mai stata implemetata in QGIS.

Saluti e grazie ancora Andrea.

[0] https://medium.com/tantotanto/qgis-selezionare-geometrie-da-una-tabella-di-attributi-correlata-bea37747a7e2

···

Il giorno 13 aprile 2017 16:45, Sergio Gollino <gollinosergio@gmail.com> ha scritto:

Scusate forse non ho ben capito la cosa che a me pare molto semplice in un DB relazionale…

Personalmente non la userei mai in un GIS (nemmeno se ci fosse la funzione) perchè fare join del genere con uno shape file di grosse dimensioni risulterebbe difficile (vedo già il pc impiccato)…

Io attuerei una soluzione ibrida.

Cioè farei una tabella (o vista se preferite ma a me le viste piacciono poco sempre per ragioni prestazionali) con un bel JOIN in postgresql. A questo punto caricherei la tabella in qgis e procederei facendo le select sulla tabella… Se cerco il palo XY mi tirerà fuori tutte le armature ad esso associate. In pratica avrò lo stesso palo (e relativa geometria) per 5 volte con 5 armature diverse.

Se volessi farlo tutto dentro db sarebbe una banale sub-query a cui cambio ogni volta la clausola where della query di ordine superiore.

Volendo, se le armature univoche non sono tantissime, con una serie di CASE e sub-query è possibile anche evitare la duplicazione del dato relativo al palo ma questo diventa macchinoso e a meno di non usarlo molto spesso non lo farei.

Saluti

SG

Il giorno 13 aprile 2017 16:16, Luca Lanteri <lklanteri@gmail.com> ha scritto:

In effetti il link è una funzionalità che sul vecchio AV risultava molto utile e di cui a volte ne sento anch’io la mancanza.
Penso che la prima cosa sia aprire una feature request ben descritta. Se di interesse comune si potrebbe finanziare con una raccolta fondi ad hoc, magari tramite il gruppo QGIS Italia.

a presto

Luca


QGIS-it-user mailing list
QGIS-it-user@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-it-user

Sergio Gollino

Questo messaggio, comprensivo di eventuali allegati, è ad uso esclusivo del destinatario e potrebbe contenere informazioni riservate; se è stato recapitato per errore ci scusiamo per l’accaduto e Vi invitiamo cortesemente a darcene notizia provvedendo alla sua distruzione.

Vi ricordiamo che la diffusione, l’utilizzo e/o la conservazione dei dati ricevuti per errore costituiscono violazione alle disposizioni del D.Lgs. n. 196/2003 “Codice in materia di protezione dei dati personali”.

Il giorno 13 aprile 2017 14:13, Totò Fiandaca <pigrecoinfinito@gmail.com> ha scritto:

il quesito è stato posto su ‘thespatialcommunity.slack.com’ e Nathan Woodrow (uno dei massimi esperti e sviluppatori QGIS) ha detto che NON è possibile farlo con QGIS.

A mio avviso sarebbe una feature molto utile ma come accade spesso occorre raccogliere dei fonti per farla sviluppare.
Io sono disposto a contribuire, ma da solo non posso farlo!!!

saluti


QGIS-it-user mailing list
QGIS-it-user@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-it-user

Il giorno 13 aprile 2017 13:51, AV <antoniovinci@wp.pl> ha scritto:

/
Totò wrote

NON è più possibile fare una selezione partendo dalla tabella lato n

/

Da come l’ho capita io, il problema di Toto’ e’ il seguente.

Avendo 4 pali con attributi “armatura” da join:

palo 1] armatura PIPPO
palo 2] armatura PLUTO
palo 3] armatura PIPPO e armatura PAPERINO
palo 4] armatura TOPOLINO

lui vuole selezionare i pali 1,3 cercando il solo nome PIPPO.

Se cosi’ stanno le cose, francamente non saprei quale Gis sia in grado di
eseguire un simile filtro “a ritroso”…


View this message in context: http://osgeo-org.1560.x6.nabble.com/QGIS-select-in-join-tabella-in-relazione-tp5317093p5317190.html

Sent from the QGIS Italian User mailing list archive at Nabble.com.


QGIS-it-user mailing list
QGIS-it-user@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-it-user

Salvatore Fiandaca
mobile.:+39 327.493.8955
m: pigrecoinfinito@gmail.com
blog:**** https://pigrecoinfinito.wordpress.com/

43°51’0.54"N 10°34’27.62"E - EPSG:4326

“Se la conoscenza deve essere aperta a tutti,
perchè mai limitarne l’accesso?”
R. Stallman

Salvatore Fiandaca
mobile.:+39 327.493.8955
m: pigrecoinfinito@gmail.com
blog:**** https://pigrecoinfinito.wordpress.com/

43°51’0.54"N 10°34’27.62"E - EPSG:4326

“Se la conoscenza deve essere aperta a tutti,
perchè mai limitarne l’accesso?”
R. Stallman

Il 14/04/2017 09:54, Totò Fiandaca ha scritto:

ecco una soluzione intelligente al problema [0], risolto velocemente da
Andrea Borruso con una semplice Azione Python;

continuo a stupirmi come una cosa cosi utile ed importante NON sia mai
stata implemetata in QGIS.

Saluti e grazie ancora Andrea.

[0] https://medium.com/tantotanto/qgis-selezionare-geometrie-da-una-tabella-di-attributi-correlata-bea37747a7e2

Ottimo. Però le query SQL "virtualizzate" si possono ora fare anche su
layer non SQL.
Saluti.

--
Paolo Cavallini - www.faunalia.eu
QGIS & PostGIS courses: http://www.faunalia.eu/training.html
https://www.google.com/trends/explore?date=all&geo=IT&q=qgis,arcgis

Ciao Paolo,
parli delle query del DB Manager?

Con questo riesco a fare query (già con la 2.14) SQL anche su layer non SQL,
ma non riesco a usarle per fare un select di geometrie con una query di
questo tipo:

SELECT * FROM idranti
JOIN (SELECT * FROM anagraficaIdranti WHERE attributo IN ('253a')) AS aI
ON idranti.id=aI.id

Il punto è in qualche modo quello di riuscire a scrivere una query su un
layer geometrico, in JOIN con altre tabelle, che abbiano nativamente come
output un select sul map canvas.
Mentre al momento (almeno sulla versione 2.14) l'output via DB Manager non è
un select degli oggetti di output di quella query per quel layer, ma il load
di un New Layer.

<http://osgeo-org.1560.x6.nabble.com/file/n5317301/AmeqqEj.png&gt;

Oppure c'è qualche altra modalità/nuova feature su versioni > 2.14?

Grazie

--
View this message in context: http://osgeo-org.1560.x6.nabble.com/QGIS-select-in-join-tabella-in-relazione-tp5317093p5317301.html
Sent from the QGIS Italian User mailing list archive at Nabble.com.

Ecco un’altra brillante soluzione realizzata da Salvatore Larosa:

https://gist.github.com/slarosa/653e6d759cf0d82c2a24dcc499b094e0

allego un mio video dimostrativo:
https://www.youtube.com/watch?v=PRDftcPWNg8

saluti e serena Pasqua di resurrezione.

···

Il giorno 14 aprile 2017 10:43, aborruso <aborruso@gmail.com> ha scritto:

Ciao Paolo,
parli delle query del DB Manager?

Con questo riesco a fare query (già con la 2.14) SQL anche su layer non SQL,
ma non riesco a usarle per fare un select di geometrie con una query di
questo tipo:

SELECT * FROM idranti
JOIN (SELECT * FROM anagraficaIdranti WHERE attributo IN (‘253a’)) AS aI
ON idranti.id=aI.id

Il punto è in qualche modo quello di riuscire a scrivere una query su un
layer geometrico, in JOIN con altre tabelle, che abbiano nativamente come
output un select sul map canvas.
Mentre al momento (almeno sulla versione 2.14) l’output via DB Manager non è
un select degli oggetti di output di quella query per quel layer, ma il load
di un New Layer.

<http://osgeo-org.1560.x6.nabble.com/file/n5317301/AmeqqEj.png>

Oppure c’è qualche altra modalità/nuova feature su versioni > 2.14?

Grazie


View this message in context: http://osgeo-org.1560.x6.nabble.com/QGIS-select-in-join-tabella-in-relazione-tp5317093p5317301.html
Sent from the QGIS Italian User mailing list archive at Nabble.com.


QGIS-it-user mailing list
QGIS-it-user@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-it-user

Salvatore Fiandaca
mobile.:+39 327.493.8955
m: pigrecoinfinito@gmail.com
blog:**** https://pigrecoinfinito.wordpress.com/

43°51’0.54"N 10°34’27.62"E - EPSG:4326

“Se la conoscenza deve essere aperta a tutti,
perchè mai limitarne l’accesso?”
R. Stallman

Credo che questa sia stata una delle più edificanti e soddisfacenti discussioni degli ultimi tempi.
Eravamo partiti, qualche giorno fa, che non si poteva fare nulla …e ora già siamo alla scelta della soluzione più elegante!
Buona Pasqua a tutti.

···

Il giorno 15 aprile 2017 10:31, Totò Fiandaca <pigrecoinfinito@gmail.com> ha scritto:

Ecco un’altra brillante soluzione realizzata da Salvatore Larosa:

https://gist.github.com/slarosa/653e6d759cf0d82c2a24dcc499b094e0

allego un mio video dimostrativo:
https://www.youtube.com/watch?v=PRDftcPWNg8

saluti e serena Pasqua di resurrezione.


QGIS-it-user mailing list
QGIS-it-user@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-it-user

Il giorno 14 aprile 2017 10:43, aborruso <aborruso@gmail.com> ha scritto:

Ciao Paolo,
parli delle query del DB Manager?

Con questo riesco a fare query (già con la 2.14) SQL anche su layer non SQL,
ma non riesco a usarle per fare un select di geometrie con una query di
questo tipo:

SELECT * FROM idranti
JOIN (SELECT * FROM anagraficaIdranti WHERE attributo IN (‘253a’)) AS aI
ON idranti.id=aI.id

Il punto è in qualche modo quello di riuscire a scrivere una query su un
layer geometrico, in JOIN con altre tabelle, che abbiano nativamente come
output un select sul map canvas.
Mentre al momento (almeno sulla versione 2.14) l’output via DB Manager non è
un select degli oggetti di output di quella query per quel layer, ma il load
di un New Layer.

<http://osgeo-org.1560.x6.nabble.com/file/n5317301/AmeqqEj.png>

Oppure c’è qualche altra modalità/nuova feature su versioni > 2.14?

Grazie


View this message in context: http://osgeo-org.1560.x6.nabble.com/QGIS-select-in-join-tabella-in-relazione-tp5317093p5317301.html
Sent from the QGIS Italian User mailing list archive at Nabble.com.


QGIS-it-user mailing list
QGIS-it-user@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-it-user

Salvatore Fiandaca
mobile.:+39 327.493.8955
m: pigrecoinfinito@gmail.com
blog:**** https://pigrecoinfinito.wordpress.com/

43°51’0.54"N 10°34’27.62"E - EPSG:4326

“Se la conoscenza deve essere aperta a tutti,
perchè mai limitarne l’accesso?”
R. Stallman

Easter Egg!

Ho abbozzato un plugin che altro non è che un mero pulsante che incapsula i comandi per le macro.

L’ho appoggiato sul repo di pyArchInit, se volete provarlo e mettere gli issues abbiamo una base di partenza dove tenere tutte insieme le osservazioni, implementazioni, bugs, tutorial, ecc.

Se volete forkarlo per implementazioni sarebbe molto carino…così imparo anche ad usare correttamente github!

https://github.com/pyarchinit/selectFromRelations

Ciao ciao

Luca

Qui, a cura del solito Totò Fiandaca, troverete un ottimo lavoro di sintesi e di chiarezza in merito a questa discussione
https://pigrecoinfinito.wordpress.com/2017/04/16/qgis-selezionare-feature-partendo-dalle-relazioni-1m

···

Il giorno 16 aprile 2017 12:12, Luca Mandolesi <mandoluca@gmail.com> ha scritto:

Easter Egg!

Ho abbozzato un plugin che altro non è che un mero pulsante che incapsula i comandi per le macro.

L’ho appoggiato sul repo di pyArchInit, se volete provarlo e mettere gli issues abbiamo una base di partenza dove tenere tutte insieme le osservazioni, implementazioni, bugs, tutorial, ecc.

Se volete forkarlo per implementazioni sarebbe molto carino…così imparo anche ad usare correttamente github!

https://github.com/pyarchinit/selectFromRelations

Ciao ciao

Luca

…e ovviamente grazie anche a Salvatore Larosa ed ad Andrea Borruso.

···

Il giorno 16 aprile 2017 16:49, Marco Spaziani <spaziani.marco@gmail.com> ha scritto:

Qui, a cura del solito Totò Fiandaca, troverete un ottimo lavoro di sintesi e di chiarezza in merito a questa discussione
https://pigrecoinfinito.wordpress.com/2017/04/16/qgis-selezionare-feature-partendo-dalle-relazioni-1m

Il giorno 16 aprile 2017 12:12, Luca Mandolesi <mandoluca@gmail.com> ha scritto:

Easter Egg!

Ho abbozzato un plugin che altro non è che un mero pulsante che incapsula i comandi per le macro.

L’ho appoggiato sul repo di pyArchInit, se volete provarlo e mettere gli issues abbiamo una base di partenza dove tenere tutte insieme le osservazioni, implementazioni, bugs, tutorial, ecc.

Se volete forkarlo per implementazioni sarebbe molto carino…così imparo anche ad usare correttamente github!

https://github.com/pyarchinit/selectFromRelations

Ciao ciao

Luca

…e grazie anche a Luca Mandolesi, of course …(la mezza bottiglia di Chianti con cui ho accompagnato timballo e abbacchio sta facendo ancora il suo effetto soporifero)

···

Il giorno 16 aprile 2017 17:09, Marco Spaziani <spaziani.marco@gmail.com> ha scritto:

…e ovviamente grazie anche a Salvatore Larosa ed ad Andrea Borruso.

Il giorno 16 aprile 2017 16:49, Marco Spaziani <spaziani.marco@gmail.com> ha scritto:

Qui, a cura del solito Totò Fiandaca, troverete un ottimo lavoro di sintesi e di chiarezza in merito a questa discussione
https://pigrecoinfinito.wordpress.com/2017/04/16/qgis-selezionare-feature-partendo-dalle-relazioni-1m

Il giorno 16 aprile 2017 12:12, Luca Mandolesi <mandoluca@gmail.com> ha scritto:

Easter Egg!

Ho abbozzato un plugin che altro non è che un mero pulsante che incapsula i comandi per le macro.

L’ho appoggiato sul repo di pyArchInit, se volete provarlo e mettere gli issues abbiamo una base di partenza dove tenere tutte insieme le osservazioni, implementazioni, bugs, tutorial, ecc.

Se volete forkarlo per implementazioni sarebbe molto carino…così imparo anche ad usare correttamente github!

https://github.com/pyarchinit/selectFromRelations

Ciao ciao

Luca

Complimenti a tutti per le soluzioni proposte!

Ho provato con dei vecchi dati a fare la selezione tramite join, come nel video di Totò,
ma mi resituisce questo errore:

An error occurred during execution of following code:
from qgis.utils import iface

inserire il layer contenente la geometria

vl = QgsMapLayerRegistry.instance().mapLayersByName(‘situazione_calotte’)[0]
iface.setActiveLayer(vl)
cLayer = iface.mapCanvas().currentLayer()

inserire i due campi per il join: layer geometrico - tabella attributi

expr = QgsExpression(“"id_calotta"=[%1st_calotta%]”)
it = cLayer.getFeatures(QgsFeatureRequest(expr))
ids = [i.id() for i in it]
cLayer.setSelectedFeature(ids)


traceback.print_exception() failed

Versione Python:
2.7.12 (default, Nov 19 2016, 06:48:10)
[GCC 5.4.0 20160609]

Versione di QGIS:
2.18.6 ‘Las Palmas’, 5f369b0

Percorso Python:

···

Il giorno 15 aprile 2017 10:31, Totò Fiandaca <pigrecoinfinito@gmail.com> ha scritto:

Ecco un’altra brillante soluzione realizzata da Salvatore Larosa:

https://gist.github.com/slarosa/653e6d759cf0d82c2a24dcc499b094e0

allego un mio video dimostrativo:
https://www.youtube.com/watch?v=PRDftcPWNg8

saluti e serena Pasqua di resurrezione.


QGIS-it-user mailing list
QGIS-it-user@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-it-user

Il giorno 14 aprile 2017 10:43, aborruso <aborruso@gmail.com> ha scritto:

Ciao Paolo,
parli delle query del DB Manager?

Con questo riesco a fare query (già con la 2.14) SQL anche su layer non SQL,
ma non riesco a usarle per fare un select di geometrie con una query di
questo tipo:

SELECT * FROM idranti
JOIN (SELECT * FROM anagraficaIdranti WHERE attributo IN (‘253a’)) AS aI
ON idranti.id=aI.id

Il punto è in qualche modo quello di riuscire a scrivere una query su un
layer geometrico, in JOIN con altre tabelle, che abbiano nativamente come
output un select sul map canvas.
Mentre al momento (almeno sulla versione 2.14) l’output via DB Manager non è
un select degli oggetti di output di quella query per quel layer, ma il load
di un New Layer.

<http://osgeo-org.1560.x6.nabble.com/file/n5317301/AmeqqEj.png>

Oppure c’è qualche altra modalità/nuova feature su versioni > 2.14?

Grazie


View this message in context: http://osgeo-org.1560.x6.nabble.com/QGIS-select-in-join-tabella-in-relazione-tp5317093p5317301.html
Sent from the QGIS Italian User mailing list archive at Nabble.com.


QGIS-it-user mailing list
QGIS-it-user@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-it-user

Salvatore Fiandaca
mobile.:+39 327.493.8955
m: pigrecoinfinito@gmail.com
blog:**** https://pigrecoinfinito.wordpress.com/

43°51’0.54"N 10°34’27.62"E - EPSG:4326

“Se la conoscenza deve essere aperta a tutti,
perchè mai limitarne l’accesso?”
R. Stallman


Daniele Bonaposta,
Cartografia - G.I.S.

via Don Minzoni 13a
40121 - Bologna
mobile: +39.338.3377044
e-mail: daniele.bonaposta@gmail.com

Linkedin: http://www.linkedin.com/pub/daniele-bonaposta/26/487/872