[QGIS-it-user] Fusione di due o più campi

Buongiorno, sto tentando di fondere i records di più campi dello stesso shape
in un campo unico, ma non riesco. Ho provato con l'operatore di
concatenazione ma trattandosi di valori numerici mi da come risultati tutti
NULL. Premetto che i valori sono univoci per ogni ID quindi unendoli non ci
sarebbero sovrapposizioni.
Grazie

--
Sent from: http://osgeo-org.1560.x6.nabble.com/QGIS-Italian-User-f5250612.html

l’operatore “||” (doppia pipe) dovrebbe concatenare tra loro anche dati di typo diverso, solo che se uno dei valori è NULL lo è anche il risultato della concatenazione. Mi pare che funzioni così.

···

Il giorno 22 febbraio 2018 11:43, Dyd666 <mauro.alfonso@libero.it> ha scritto:

Buongiorno, sto tentando di fondere i records di più campi dello stesso shape
in un campo unico, ma non riesco. Ho provato con l’operatore di
concatenazione ma trattandosi di valori numerici mi da come risultati tutti
NULL. Premetto che i valori sono univoci per ogni ID quindi unendoli non ci
sarebbero sovrapposizioni.
Grazie


Sent from: http://osgeo-org.1560.x6.nabble.com/QGIS-Italian-User-f5250612.html


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

enricofer wrote

l'operatore "||" (doppia pipe) dovrebbe concatenare tra loro anche dati di
typo diverso, solo che se uno dei valori è NULL lo è anche il risultato
della concatenazione. Mi pare che funzioni così.

SI, funziona cosi.

Per ovviare basta utilizzare coalesce(), che prende il primo valore non
nullo.

es:
"field1" || coalesce ("field2", 10)

in questo caso, field1 non ha valori null; field2 ha valori null, nei record
con valori null sostituirà 10, oppure un valore a piacere.

saluti

-----
https://pigrecoinfinito.wordpress.com/
--
Sent from: http://osgeo-org.1560.x6.nabble.com/QGIS-Italian-User-f5250612.html

Totò wrote

Per ovviare basta utilizzare coalesce(), che prende il primo valore non
nullo.

....eh eh ... appunto coalesce() , tipica funzione copiata da SQL !!

Saluti
Nino

--
Sent from: http://osgeo-org.1560.x6.nabble.com/QGIS-Italian-User-f5250612.html

Grazie per le risposte. Nel mio caso ho un valore numerico per ogni ID,
solamente che la distribuzione è a scacchiera:
es:

fileld1 field2 field3 ecc.
NULL 100 NULL NULL
200 NULL NULL NULL
NULL NULL 300 NULL
....... ........ ....... ........

--
Sent from: http://osgeo-org.1560.x6.nabble.com/QGIS-Italian-User-f5250612.html

Dyd666 wrote

Grazie per le risposte. Nel mio caso ho un valore numerico per ogni ID,
solamente che la distribuzione è a scacchiera:
es:

fileld1 field2 field3 ecc.
NULL 100 NULL NULL
200 NULL NULL NULL
NULL NULL 300 NULL
....... ........ ....... ........

Sperando di aver capito il problema, farei cosi:

coalesce ("field1","field2","field3","field4")

questo restituirà solo il campo non nullo, quindi:
100
200
300

ciao

-----
https://pigrecoinfinito.wordpress.com/
--
Sent from: http://osgeo-org.1560.x6.nabble.com/QGIS-Italian-User-f5250612.html

Grazie Totò, è proprio quello che proverò a fare.
Saluti.

--
Sent from: http://osgeo-org.1560.x6.nabble.com/QGIS-Italian-User-f5250612.html