Obsidian | Level 7

## difference between sum() and +<operator>

``````data work.passengers;
TransPassengers = 100;
OrigPassengers = .;
Totalusingoperator = OrigPassengers + TransPassengers;
Totalusingfunction = Sum(OrigPassengers,TransPassengers);
put Totalusingoperator;
put Totalusingfunction;
run;``````

Please explain the logic of output why value of Totalusingoperator is . and Totalusingfunction is 100.

Ayushmaan

1 ACCEPTED SOLUTION

Accepted Solutions
Tourmaline | Level 20

## Re: difference between sum() and +<operator>

As you can see in the documentation for the SUM function here,  the SUM function "Returns the sum of the nonmissing arguments.", i.e. the sum function ignores the missing value. On the other hand, when you use a missing value with an arithmetic operator (+, - etc), it returnsa missing value.

3 REPLIES 3
Tourmaline | Level 20

## Re: difference between sum() and +<operator>

As you can see in the documentation for the SUM function here,  the SUM function "Returns the sum of the nonmissing arguments.", i.e. the sum function ignores the missing value. On the other hand, when you use a missing value with an arithmetic operator (+, - etc), it returnsa missing value.

Fluorite | Level 6

## Re: difference between sum() and +<operator>

Hello - for cumulative sum we use (+) plus sum operator instead of sum function but still we get non-missing value, isn't it. can you please explain why? let me know please you don't get my concern?

Pankajwa
Calcite | Level 5

## Re: difference between sum() and +<operator>

Thats  of  Accumalting column effect. One need to use RETAIN syntax for retaining the initial  value . Use SUM operator instead

Tarannum
Discussion stats
• 3 replies
• 15471 views
• 4 likes
• 4 in conversation