Скорее всего, это потому, что хотя бы одно из ваших значений равно NULL
.
В T-SQL основное правило:
NULL + anything = NULL
Чтобы проверить, почему этовернув NULL
, попробуйте следующий фрагмент SQL.Он покажет вам все ваши значения, собранные вместе, чтобы вы могли понять, почему возвращается NULL
.
SELECT *
FROM (
SELECT WEPHWORK.WEPHWORK,
OCESAWD.OCESAWD,
OCESAWE.OCESAWE,
CASE
WHEN cal.Weekday = ' ' OR HOLIDAY.DateInfo > ' '
1
ELSE 2
END as type
CASE
WHEN cal.Weekday = ' ' OR HOLIDAY.DateInfo > ' '
THEN WEPHWORK.WEPHWORK + OCESAWD.OCESAWD + OCESAWE.OCESAWE
ELSE OCESAWD.OCESAWD + OCESAWE.OCESAWE
END as weighted
FROM your_tables.... ) x
WHERE x.weighted IS NULL