Confrontare due campi di una tabella attributi in QGIS
Determinare i valori uguali presenti in due campi diversi di una tabella degli attributi usando le espressioni di QGIS.
A cura di
Totò Fiandaca
| issue
#190
| guida/e
Totò Fiandaca
Andrea Borruso
Caso d’uso
Ho una tabella con due campi che raccolgono una lista di numeri di fogli catastali, come confrontarle e estrarre solo i numeri fogli uguali?

Espressioni di QGIS
Importo la tabella in QGIS come testo delimitato, creo una colonna testo output e la popolo con la seguente espressione:
array_to_string(
array_majority( array_cat(
string_to_array(replace("fogli1",'-',',')),
string_to_array(replace("fogli2",'-',','))
)))
Tradotto in linguaggio umano:
Trasforma i valori dei due campi in array (string_to_array(replace("fogli1",'|',','))) e poi concatena (array_cat), cioè crea unico array, successivamente estrae l’array dei valori che maggiormente sono presenti (array_majority), infine converte l’array in stringa.
download
qui file di esempio
Riferimenti utili
Ultima modifica 02/10/2021: update (1bfee0c)