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

Warnung:Der Nullwert wird durch eine Aggregat- oder andere SET-Operation in Aqua Data Studio eliminiert

Sie würden meistens COUNT verwenden über eine UID zusammenzufassen. Deshalb

COUNT([uid]) erzeugt die Warnung:

während es mit einem linken Join verwendet wird, wo das gezählte Objekt nicht existiert.

Mit COUNT(*) in diesem Fall würden auch falsche Ergebnisse ausgegeben, da Sie dann die Gesamtzahl der vorhandenen Ergebnisse (dh Eltern) zählen würden.

Mit COUNT([uid]) IST eine gültige Zählweise, und die Warnung ist nichts weiter als eine Warnung. Wenn Sie jedoch besorgt sind und in diesem Fall eine echte Anzahl von UIDs erhalten möchten, können Sie Folgendes verwenden:

SUM(CASE WHEN [uid] IS NULL THEN 0 ELSE 1 END) AS [new_count]

Dies würde Ihrer Abfrage nicht viel Overhead hinzufügen. (getestet mssql 2008)