Scenarie:
Du arbejder som SQL Server-udvikler, du skal forespørge på dbo.Kundetabel og erstatte Null-værdier i kolonnen Navn til "Ukendt navn". Hvilke SQL-funktioner vil du bruge til at erstatte Null-værdi med "Ukendt navn"?
Løsning:
Du kan bruge funktionerne ISNULL eller COALESCE til at erstatte Null med en værdi, vi kan lide. Lad os oprette dbo.Customer-tabel og indsætte eksempelposter ved at bruge nedenstående udsagn.--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')Lad os bruge funktionerne ISNULL eller COALESCE til at erstatte Null med "Ukendt navn".
Select Id,ISNULL(Name,'Unknown Name') AS NameByISNull, COALESCE(Name,'Unknown Name') NamebyCoalesce, Address From dbo.Customer
Sådan erstattes Null med værdier i SQL Server - TSQL-vejledning |
Hvis du har situationer som denne, du må hellere bruge COALESCE. Datatypen for et COALESCE-udtryk er datatypen for inputargumentet med den højeste datatypeprioritet. I vores tilfælde er "Ukendt navn" 12 tegn, og den valgte at bruge den i stedet for Name kolonne datatype, som er varchar(10).