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 |
+--------------+-----------------+