Ho rinominato i tuoi dati in:
- mattcat_areali_unione
- mattcat_particelle
SQL1) Se esegui la stringa SQL
SELECT
b.id as geom_id,
cod_fiscal
FROM mattcat_areali_unione a, mattcat_particelle b
WHERE a.wskey=b.wskey
ottieni la relazione N:N di sole due colonne, importanti:
- identificativo univoco geometria (generato automaticamente da 1 a xxx) b.id as geom_id
- codice fiscale cod_fiscal
SQL2) con quest'altra SQL
SELECT count (geom_id) as grouped_geom_id, cod_fiscal
FROM (
SELECT
b.id as geom_id,
cod_fiscal
FROM mattcat_areali_unione a, mattcat_particelle b
WHERE a.wskey=b.wskey
) foo
GROUP BY cod_fiscal
avviene il raggruppamento GROUP BY cod_fiscal per codice fiscale e ti permette di conoscere quante geometrie appartengono ad ogni cod_fiscal.
questa è la stringa per generare le stampe, che non puoi fare con QGis, ma devi per forza fare un pagina web: non intendendo pubblica, ma web locale, sfruttando il php
SQL3) infine questa SQL, inversa alla SQL2
SELECT count (cod_fiscal) as grouped_cod_fiscal, geom_id
FROM (
SELECT
b.id as geom_id,
cod_fiscal
FROM mattcat_areali_unione a, mattcat_particelle b
WHERE a.wskey=b.wskey
) foo
GROUP BY geom_id
ti dice quanti cod_fiscal sono associati ad ogni geometria
NOTE codice fiscale e mappali NN
- fare una espressione tipo count (cod_fiscal) e poi mettere as grouped_cod_fiscal significa che quella colonna si chiamerà grouped_cod_fiscal molto utile, perchè altrimenti questa si chiamerebbe count perdendo significato
- ho cercato di mettere un rientro nella stringa per significare le dipendenze infatti se vedi SELECT FROM WHERE GROUP sono sempre all'inizio
- quando vedi SELECT ... FROM (SELECT ...) significa che viene fatta una query, su un'altra query: sarebbe come creare prima una tabella e poi creare una seconda operazione su quest'ultima tabella
- se mpre in riferimento a SELECT ... FROM (SELECT ...) ho messo foo alla fine; non pensare che è un termine a caso! foo indica quasi sempre la prima di una tabella mentre bar indica la seconda, un po' come dire tizio e caio, non c'è la terza, ma spesso sono sempre solo 2 ... in alternatica usa semplicemente table1, table2, table3, ...