Scenario:
Stai lavorando come sviluppatore di SQL Server, devi interrogare la tabella dbo.Customer e sostituire i valori Null nella colonna Nome con "Nome sconosciuto". Quali funzioni SQL utilizzerai per sostituire il valore Null con "Nome sconosciuto"?
Soluzione:
Puoi usare le funzioni ISNULL o COALESCE per sostituire Null con il valore che ci piace. Creiamo la tabella dbo.Customer e inseriamo i record di esempio utilizzando le istruzioni seguenti.--Create dbo.Customer table Create table dbo.Customer( Id int, Name VARCHAR(10), Address VARCHAR(100)) --Insert records in dbo.Customer table Insert into dbo.Customer Values(1,'Aamir','XyZ Address') ,(2,'Raza',Null) ,(3,null,'abc address')Usiamo le funzioni ISNULL o COALESCE per sostituire Null con "Nome sconosciuto".
Select Id,ISNULL(Name,'Unknown Name') AS NameByISNull, COALESCE(Name,'Unknown Name') NamebyCoalesce, Address From dbo.Customer
Come sostituire Null con Values in SQL Server - Tutorial TSQL |
Se hai situazioni come questa, è meglio utilizzare COALESCE. Il tipo di dati di un'espressione COALESCE è il tipo di dati dell'argomento di input con la precedenza del tipo di dati più alta. Nel nostro caso "Nome sconosciuto" è di 12 caratteri e ha scelto di usarlo al posto del tipo di dati della colonna Nome che è varchar(10).