<div dir="ltr">puoi mettere tutti i casi in un unico comando, in questo caso replica 

WHEN  <b>"stringa"='AA' </b>THEN '<b>aa</b>' le N volte che ti serve tipo così:<div><br></div><div>CASE WHEN  <b>"stringa"='02' </b>THEN '200' WHEN  <b>"stringa"='01' </b>THEN '100' WHEN  <b>"stringa"='03' </b>T HEN '300' WHEN  <b>"stringa"='04' </b>THEN '400'  ELSE NULL END </div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">Il giorno mer 2 mar 2022 alle ore 12:00 Franco Cazzola <<a href="mailto:franco.cazzola@idroambiente.it">franco.cazzola@idroambiente.it</a>> ha scritto:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">





<div lang="IT" style="overflow-wrap: break-word;">
<div class="gmail-m_108476716993897158WordSection1">
<p class="MsoNormal"><span>Grazie Federico per la pronta risposta<u></u><u></u></span></p>
<p class="MsoNormal"><span>Purtroppo ho circa 30 casi.<u></u><u></u></span></p>
<p class="MsoNormal"><span>Spero che la lunghezza della istruzione CASE non sia limitata nel numero di caratteri<u></u><u></u></span></p>
<p class="MsoNormal"><span>Ci sono altre soluzioni ?<u></u><u></u></span></p>
<p class="MsoNormal"><span>Franco<u></u><u></u></span></p>
<p class="MsoNormal"><span><u></u> <u></u></span></p>
<div style="border-right:none;border-bottom:none;border-left:none;border-top:1pt solid rgb(225,225,225);padding:3pt 0cm 0cm">
<p class="MsoNormal"><b>Da:</b> Federico Gianoli <<a href="mailto:gianoli.federico@gmail.com" target="_blank">gianoli.federico@gmail.com</a>> <br>
<b>Inviato:</b> mercoledì 2 marzo 2022 11:20<br>
<b>A:</b> Franco Cazzola <<a href="mailto:franco.cazzola@idroambiente.it" target="_blank">franco.cazzola@idroambiente.it</a>><br>
<b>Cc:</b> <a href="mailto:qgis-it-user@lists.osgeo.org" target="_blank">qgis-it-user@lists.osgeo.org</a><br>
<b>Oggetto:</b> Re: [QGIS-it-user] Tabella attributi - Calcolatore campi<u></u><u></u></p>
</div>
<p class="MsoNormal"><u></u> <u></u></p>
<div>
<p class="MsoNormal">Ciao,<u></u><u></u></p>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">Dalla documentazione: CASE è usato per valutare una serie di condizioni e restituisce un risultato per la prima condizione incontrata. Le condizioni sono valutate sequenzialmente, e se una condizione è vera, la valutazione si ferma, e il
 corrispondente risultato è restituito. Se nessuna delle condizioni è vera, è restituito il valore nella clausola ELSE.<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">prova con:<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">CASE WHEN  <b>"stringa"='02' </b>THEN '200' WHEN  <b>"stringa"='01' </b>THEN '100' ELSE NULL END <u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
</div>
<p class="MsoNormal"><u></u> <u></u></p>
<div>
<div>
<p class="MsoNormal">Il giorno mer 2 mar 2022 alle ore 11:07 Franco Cazzola <<a href="mailto:franco.cazzola@idroambiente.it" target="_blank">franco.cazzola@idroambiente.it</a>> ha scritto:<u></u><u></u></p>
</div>
<blockquote style="border-top:none;border-right:none;border-bottom:none;border-left:1pt solid rgb(204,204,204);padding:0cm 0cm 0cm 6pt;margin-left:4.8pt;margin-right:0cm">
<div>
<div>
<p class="MsoNormal">Buongiorno<u></u><u></u></p>
<p class="MsoNormal">Non riesco a capire perché non funziona la seguente sequenza di operazioni.<u></u><u></u></p>
<p class="MsoNormal">Devo aggiornare il campo unita in base ai valori del campo stringa.<u></u><u></u></p>
<p class="MsoNormal">Esempio: aggiorno il campo unita con valore 200 se il campo stringa=02<u></u><u></u></p>
<p class="MsoNormal">Uso la seguente sequenza:<u></u><u></u></p>
<p class="MsoNormal">Nella tabella attributi apro il Calcolatore di campi<u></u><u></u></p>
<p class="MsoNormal"><b>Flag</b> su Aggiorna campo esistente, scelgo il campo
<b>unita</b> e nella espressione inserisco<b>:</b><u></u><u></u></p>
<p class="MsoNormal"><b>CASE WHEN "unita" IS NULL AND "stringa"='01' THEN '100' END</b><u></u><u></u></p>
<p class="MsoNormal">e ottengo quanto sotto riportato<u></u><u></u></p>
<p class="MsoNormal"><img border="0" width="199" height="282" style="width: 2.0729in; height: 2.9375in;" id="gmail-m_108476716993897158gmail-m_-2393516130523353610Immagine_x0020_7" src="cid:17f4a4a32804cff311"><u></u><u></u></p>
<p class="MsoNormal"> <u></u><u></u></p>
<p class="MsoNormal">Ora se eseguo la stessa sequenza con<u></u><u></u></p>
<p class="MsoNormal"><b>CASE WHEN "unita" IS NULL AND "stringa"='02' THEN '200' END</b><u></u><u></u></p>
<p class="MsoNormal">Mi aggiorna il campo unita con 200 ma sostituisce anche i precedenti valori.
<u></u><u></u></p>
<p class="MsoNormal">Perché ?<u></u><u></u></p>
<p class="MsoNormal"> <u></u><u></u></p>
<p class="MsoNormal"><img border="0" width="221" height="201" style="width: 2.302in; height: 2.0937in;" id="gmail-m_108476716993897158gmail-m_-2393516130523353610Immagine_x0020_8" src="cid:17f4a4a32815b16b22"><u></u><u></u></p>
<p class="MsoNormal">Ho provato a sostituire il campo NULL di unita con un valore qualsiasi e ripetere la sequenza ma non cambia<u></u><u></u></p>
<p class="MsoNormal"> <u></u><u></u></p>
<p class="MsoNormal">Grazie per ogni contributo<u></u><u></u></p>
<p class="MsoNormal">Franco Cazzola<u></u><u></u></p>
</div>
</div>
<p class="MsoNormal">_______________________________________________<br>
QGIS-it-user mailing list<br>
<a href="mailto:QGIS-it-user@lists.osgeo.org" target="_blank">QGIS-it-user@lists.osgeo.org</a><br>
<a href="https://lists.osgeo.org/mailman/listinfo/qgis-it-user" target="_blank">https://lists.osgeo.org/mailman/listinfo/qgis-it-user</a><u></u><u></u></p>
</blockquote>
</div>
</div>
</div>

</blockquote></div>