Abrufen fehlender Werte in SQL: Ersetzen von NULL-Werten durch zuvor bekannte Werte
Datentabellen enthalten häufig fehlende Werte, die durch NULL-Werte dargestellt werden. Um die Analyse zu optimieren und die Datenintegrität aufrechtzuerhalten, ist es von entscheidender Bedeutung, NULL-Werte durch aussagekräftige Werte zu ersetzen. Eine gängige Strategie besteht darin, jeden NULL-Wert durch den letzten bekannten Nicht-NULL-Wert in einer vorhergehenden Zeile zu ersetzen.
Um dies in SQL Server zu erreichen, ziehen Sie die folgende Lösung in Betracht:
DECLARE @Table TABLE( ID INT, Val INT ) INSERT INTO @Table (ID,Val) SELECT 1, 3 INSERT INTO @Table (ID,Val) SELECT 2, NULL INSERT INTO @Table (ID,Val) SELECT 3, 5 INSERT INTO @Table (ID,Val) SELECT 4, NULL INSERT INTO @Table (ID,Val) SELECT 5, NULL INSERT INTO @Table (ID,Val) SELECT 6, 2 SELECT *, ISNULL(Val, (SELECT TOP 1 Val FROM @Table WHERE ID < t.ID AND Val IS NOT NULL ORDER BY ID DESC)) FROM @Table t
Diese Abfrage funktioniert wie folgt:
Das obige ist der detaillierte Inhalt vonWie ersetze ich NULL-Werte durch frühere Nicht-NULL-Werte in SQL?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!