Query правильно возвращает вычисления, но возвращает NULL при умножении на сумму - PullRequest
0 голосов
/ 20 мая 2019

Я пытаюсь вычислить сумму двух вычислений, умноженных вместе.Независимо, вычисления {Hours} и {Rate} работают просто отлично, но когда я умножаю их вместе в формуле суммы, они обычно возвращают ноль.Исключением является то, что они вернут 0, если показатель равен 0.

Если у кого-то есть руководство, оно будет оценено.Я также хотел бы знать, что я сделал неправильно, потому что я учу себя этому.

Select 
      SFLTX.BF2RDAT as {Date}, 
      SFLTX.BF2DEPT as {Dept},
      sum((SFLTX.BF2QTYG / HJOBDR.EDRUNS)) as {HOURS},
      (RESRE.ABLABR * ((RESRE.ABBRDP + RESRE.ABBDVP)/100)) as {RATE},
      sum((SFLTX.BF2QTYG / HJOBDR.EDRUNS) * (RESRE.ABLABR * ((RESRE.ABBRDP + RESRE.ABBDVP)/100))) as {ABS}
from SFLTX

join ERW.FCALPF on SFLTX.BF2RDAT = ERW.FCALPF.FDATE
join HJOBDR on SFLTX.BF2JOBN = HJOBDR.EDJOB# and SFLTX.BF2SEQN = HJOBDR.EDSEQ#
Join RESRE on SFLTX.BF2DEPT = RESRE.ABDEPT and SFLTX.BF2RESC = RESRE.ABRESC

where SFLTX.BF2RDAT > '1/1/2019' and (right(ERW.FCALPF.FYEAR,2) = ‘19’ and SFLTX.BF2CMODE = 'R')

group by SFLTX.BF2RDAT , SFLTX.BF2DEPT, (RESRE.ABLABR * ((RESRE.ABBRDP + RESRE.ABBDVP)/100))

Я приложил изображение вывода данных.

1 Ответ

0 голосов
/ 20 мая 2019

Если какой-либо из столбцов, участвующих в каком-либо из вычислений, содержит значения NULL, то результатом вычисления также будет NULL. Убедитесь, что либо все столбцы определены как NOT NULL, либо используйте инструкцию CASE для преобразования любого значения NULL в 0 или 0,00 (если только вы не собираетесь делить на этот столбец).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...