Cercherò di spiegarlo nel modo più semplice possibile in modo che sia facile da capire :
Supponiamo di avere una tabella Vendor imposta qualcosa del genere:
create table Vendor (AccountTerms int, ulARAgeing varchar(50));
Quindi inseriremo alcuni valori di esempio per entrambe le colonne in Vendor tabella:
insert into Vendor values
(0,'Test'),
(1,'Test1'),
(2,'Test2');
Successivamente, scriveremo una dichiarazione di aggiornamento per aggiornare il tuo ulARAgeing colonna in base ai valori in AccountTerms colonna nella stessa tabella:
update vendor
set ulARAgeing = (CASE
WHEN AccountTerms = 0
THEN 'Current'
WHEN AccountTerms = 1
THEN '30 Days'
WHEN AccountTerms = 2
THEN '60 Days'
END);
CASE WHEN è simile all'utilizzo di IF..ELSE istruzione nella maggior parte degli altri linguaggi di programmazione. Quindi, qui aggiorneremo il ulARAgeing esistente valore su un valore di stringa diverso in base alla condizione nell'istruzione case when. Quindi, per es. se AccountTerms = 0 quindi aggiorneremo il valore per ulARAgeing a "Corrente" e così via.
Per verificare se l'istruzione di cui sopra ha funzionato correttamente, è sufficiente eseguire l'istruzione di aggiornamento sopra e quindi selezionare nuovamente dalla tabella:
select * from Vendor;
Risultato:
+--------------+-----------------+
| AccountTerms | ulARAgeing |
+--------------+-----------------+
| 0 | Current |
| 1 | 30 Days |
| 2 | 60 Days |
+--------------+-----------------+