Reference documentation and code samples for the Google Cloud Datastore v1 API class AggregationQuery.Types.Aggregation.Types.Sum.
Sum of the values of the requested property.
Only numeric values will be aggregated. All non-numeric values
including NULL are skipped.
If the aggregated values contain NaN, returns NaN. Infinity math
follows IEEE-754 standards.
If the aggregated value set is empty, returns 0.
Returns a 64-bit integer if all aggregated numbers are integers and the
sum result does not overflow. Otherwise, the result is returned as a
double. Note that even if all the aggregated values are integers, the
result is returned as a double if it cannot fit within a 64-bit signed
integer. When this occurs, the returned value will lose precision.
When underflow occurs, floating-point aggregation is non-deterministic.
This means that running the same query repeatedly without any changes to
the underlying values could produce slightly different results each
time. In those cases, values should be stored as integers over
floating-point numbers.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-07 UTC."],[[["\u003cp\u003eThis document provides reference information for the \u003ccode\u003eAggregationQuery.Types.Aggregation.Types.Sum\u003c/code\u003e class within the Google Cloud Datastore v1 API, detailing how it calculates the sum of property values.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eSum\u003c/code\u003e class aggregates only numeric values, skipping non-numeric and null values, and returns \u003ccode\u003eNaN\u003c/code\u003e if \u003ccode\u003eNaN\u003c/code\u003e is encountered in the aggregated values.\u003c/p\u003e\n"],["\u003cp\u003eIf all aggregated values are integers and the sum does not overflow, the result is a 64-bit integer; otherwise, a double is returned, potentially with loss of precision.\u003c/p\u003e\n"],["\u003cp\u003eThe class implements interfaces like \u003ccode\u003eIMessage\u003c/code\u003e, \u003ccode\u003eIEquatable\u003c/code\u003e, \u003ccode\u003eIDeepCloneable\u003c/code\u003e, and \u003ccode\u003eIBufferMessage\u003c/code\u003e, and has properties such as \u003ccode\u003eProperty\u003c/code\u003e to specify the aggregation target.\u003c/p\u003e\n"],["\u003cp\u003eThis document covers versions 4.0.0 to 4.15.0, as well as versions 3.2.0 to 3.5.0, of the \u003ccode\u003eGoogle.Cloud.Datastore.V1\u003c/code\u003e package, with \u003ccode\u003e4.15.0\u003c/code\u003e being the latest version.\u003c/p\u003e\n"]]],[],null,[]]