У меня есть проблема, с которой, я уверен, все, кто работал с MSSQL, имели дело:
CREATE TABLE #temp (
value1 DECIMAL(10,2)
, value2 DECIMAL(10,2)
);
INSERT INTO #temp VALUES (1.00, NULL);
SELECT value1 + value2 FROM #temp
Если я выполняю последний запрос value1 + value2
, а не получаю ожидаемый результат (1.00
), он возвращает NULL
, когда одно из значений, которые я включаю в вычисление, равно NULL
. Это вызывает всевозможные страдания в моих отчетах, потому что запрос не возвращает правильное значение, когда один из моих входных данных - NULL
.
Есть ли обходной путь для вышеуказанного, чтобы получить ожидаемый результат 1.00
вместо NULL
, так что второе значение NULL
рассматривается как ноль?