Hallo,
mit den bisherigen Antworten kann ich leider wenig anfangen, da eine meiner Aussagen nicht berücksichtigt wird:
Die Procedure läuft intern absolut korrekt ab.
Ja, das mag so sein, dass Du es protokolliert hast, aber nur für einen Fall (meinetwegen auch mehr) und Du hast bereits mehrere Antworten, wie es zu der Null kommen kann.
Am ehesten würde ich mal auf die Antwort von Jumpy tippen.
In
SQL ist es idR so:
1+2+NULL=NULL
NULL steht für undefiniert, definierte Werte verrechnet oder verglichen mit undefinierten Werten ergibt immer undefiniert.
Woher kommt die NULL? Entweder eines der Felder enthält Null oder wie ich beschrieben habe führt ein Join ins Leere und "produziert" NULL Werte, die in der Berechnung alles mitreißen.