Si può fare questo con dichiarazione di due update:
UPDATE Table1
SET Table1.[Ticker] = 'TXSFI' WHERE Table1.[Acct Numb] like '*03';
Update Table1
SET Table1.[Ticker] = 'TESEI' WHERE Table1.[Acct Numb] like '*04';
In alternativa, è possibile combinare questi con aggiornamenti condizionali (versione non-Access):
update table1
SET Table1.[Ticker] = (case when Table1.[Acct Numb] like '%03' then 'TXSFI'
when Table1.[Acct Numb] like '%04' then 'TESEI'
end)
where Table1.[Acct Numb] like '%03' or Table1.[Acct Numb] like '%04'
A proposito, sto indovinando che stai usando Access. Il carattere jolly standard in SQL sarebbe like '%03'
ma Access utilizza uno '*'
anziché '%'
. È una buona idea taggare la tua domanda con il database che stai utilizzando.
Detto questo, non è possibile utilizzare case
in Access:
update table1
SET Table1.[Ticker] = iif(Table1.[Acct Numb] like '*03', 'TXSFI', 'TESEI')
where Table1.[Acct Numb] like '*03' or Table1.[Acct Numb] like '*04'
fonte
2013-07-01 14:07:32
Usa ' '' invece di '" 'per stringhe SQL – Andomar
Non si può avere 2' WHERE' clausole in 1 query. –
Grazie per la risposta, ma quando sto cercando di eseguire questo, è mostra l'errore come operatore mancante – user2520291