Scenariusz:
Pracujesz jako programista SQL Server, musisz wykonać zapytanie do tabeli dbo.Customer i zamienić wartości Null w kolumnie Name na "Unknown Name". Jakich funkcji SQL użyjesz do zastąpienia wartości Null „Nieznaną nazwą”?
Rozwiązanie:
Możesz użyć funkcji ISNULL lub COALESCE, aby zastąpić Null wartością, którą lubimy. Utwórzmy tabelę dbo.Customer i wstawmy przykładowe rekordy, korzystając z poniższych instrukcji.--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')Użyjmy funkcji ISNULL lub COALESCE, aby zastąpić wartość Null „Unknown Name”.
Select Id,ISNULL(Name,'Unknown Name') AS NameByISNull, COALESCE(Name,'Unknown Name') NamebyCoalesce, Address From dbo.Customer
Jak zamienić wartość Null na wartości w SQL Server — samouczek TSQL |
Jeśli masz takie sytuacje, lepiej użyć COALESCE. Typ danych wyrażenia COALESCE to typ danych argumentu wejściowego o najwyższym priorytecie typu danych. W naszym przypadku "Nieznana nazwa" ma 12 znaków i wybrała użycie tego zamiast typu danych kolumny Nazwa, którym jest varchar(10).