Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Gibt es eine schnelle Möglichkeit zu überprüfen, ob eine Spalte NULL ist?

Nein. Es gibt Möglichkeiten, es schneller zu codieren, aber es gibt keine Abkürzungen, wie Sie andeuten. Aus einer Antwort, die ich auf dba.stackexchange gegeben habe :

DECLARE @tb NVARCHAR(255), @sql NVARCHAR(MAX);

SET @tb = N'dbo.[table]';

SET @sql = N'SELECT * FROM ' + @tb + ' WHERE 1 = 0';

SELECT @sql = @sql + N' OR ' + QUOTENAME(name) + ' IS NULL'
    FROM sys.columns 
    WHERE [object_id] = OBJECT_ID(@tb);

EXEC sp_executesql @sql;