SQL - Modificare il valore solo di una parte di un campo con l’SQL

Il . Inserito in Informatica. Visite: 522

Stella inattivaStella inattivaStella inattivaStella inattivaStella inattiva
 

Può capitare di dover modificare con l’SQL un intero file ed è comodo farlo se si vuole modificare il valore di un intero campo, ma se occorre invece modificare solo una parte del campo allora l’affare si complica.

Basta pensare a quei file che hanno un unico campo contenente valori differenti in base alla posizione.

In quel caso occorre scomodare la clausola SUBSTR dell’SQL (Grazie di ESISTERE)

 

UPDATE R2LOCD/ITCAA                               

SET ITCATLOG =                                     

SUBSTR(ITCATLOG, 1, 207) !! '84000' !! '0000099' !!

SUBSTR(ITCATLOG, 220, 14)

Attenzione! Sostituire i punti esclamativi (!!) con i pipe (||) in caso non funzioni.

Nell’esempio sopra si modifica il campo ITCATLOG e come valore di impostazione si concatenano le parti fisse del campo stesso più altri valori fissi, racchiusi tra apici.

In questo caso, il campo è lungo 233 bytes

Quindi al campo ITCATLOG si imposta come valore:

I primi 207 Byte del campo stesso. (207 Bytes)

La costante 84000 (5 Bytes)

La costante 0000099 (7 Bytes)

Gli ultimi 14 byte del campo, che partono dalla posizione 214 (14 Bytes)

Quindi 207 + 5 + 7 + 14 = 233 Bytes che corrisponde alla lunghezza del record

Come congiunzione tra valori si usa il doppio pipe (||).

Autore
Davide Galloni
Author: Davide GalloniEmail: Questo indirizzo email è protetto dagli spambots. È necessario abilitare JavaScript per vederlo.
"La vita è l'insegnante più severa, prima ti fa l'esame e poi ti spiega la lezione"

Tags: sql modifica valore campo

Aggiungi commento


Codice di sicurezza
Aggiorna

Link Sponsorizzati.