aggregation_result.proto 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. // Copyright 2022 Google LLC
  2. //
  3. // Licensed under the Apache License, Version 2.0 (the "License");
  4. // you may not use this file except in compliance with the License.
  5. // You may obtain a copy of the License at
  6. //
  7. // http://www.apache.org/licenses/LICENSE-2.0
  8. //
  9. // Unless required by applicable law or agreed to in writing, software
  10. // distributed under the License is distributed on an "AS IS" BASIS,
  11. // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  12. // See the License for the specific language governing permissions and
  13. // limitations under the License.
  14. syntax = "proto3";
  15. package google.firestore.v1;
  16. import "google/firestore/v1/document.proto";
  17. option csharp_namespace = "Google.Cloud.Firestore.V1";
  18. option go_package = "google.golang.org/genproto/googleapis/firestore/v1;firestore";
  19. option java_multiple_files = true;
  20. option java_outer_classname = "AggregationResultProto";
  21. option java_package = "com.google.firestore.v1";
  22. option objc_class_prefix = "GCFS";
  23. option php_namespace = "Google\\Cloud\\Firestore\\V1";
  24. option ruby_package = "Google::Cloud::Firestore::V1";
  25. // The result of a single bucket from a Firestore aggregation query.
  26. //
  27. // The keys of `aggregate_fields` are the same for all results in an aggregation
  28. // query, unlike document queries which can have different fields present for
  29. // each result.
  30. message AggregationResult {
  31. // The result of the aggregation functions, ex: `COUNT(*) AS total_docs`.
  32. //
  33. // The key is the [alias][google.firestore.v1.StructuredAggregationQuery.Aggregation.alias]
  34. // assigned to the aggregation function on input and the size of this map
  35. // equals the number of aggregation functions in the query.
  36. map<string, Value> aggregate_fields = 2;
  37. }