Текущая накопленная сумма 1d NumPy Array

В основном вы будете использовать COUNT для суммирования по UID. Поэтому

COUNT([uid]) выдаст предупреждение:

Внимание: значение Null исключается с помощью агрегата или другой операции SET.

, в то время как используется с левым соединением, где подсчитанный объект не существует.

Использование COUNT(*) в этом случае также приводило бы к неправильным результатам, так как тогда вы считали бы общее количество результатов (т. е. родители), которые существуют.

Использование COUNT([uid]) Является допустимым способом подсчета, и предупреждение является не чем иным, как предупреждением. Однако если вы заинтересованы, и вы хотите получить истинное количество uids в этом случае, вы можете использовать:

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

Это не добавило бы много накладных расходов на ваш запрос. (проверено mssql 2008)

13
задан sawa 27 April 2011 в 02:32
поделиться