Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Aggiorna tutti i valori SQL NULL in più colonne usando la clausola WHERE a livello di colonna?

Non esiste alcuna convenzione in merito:se desideri elaborare solo i record in cui le rispettive colonne sono NULL, devi utilizzare:

WHERE Answer_1 IS NULL 
   OR Answer_2 IS NULL 
   OR ...

Ma potresti usarlo nell'istruzione UPDATE:

UPDATE YOUR_TABLE
   SET col1 = COALESCE(col1, 99),
       col2 = COALESCE(col2, 99),
       col3 = ...

La logica è che il valore verrà aggiornato a 99 solo se il valore della colonna è NULL, a causa del funzionamento di COALESCE, restituendo il primo valore non NULL (elaborando l'elenco fornito da sinistra a destra).