Class: Google::Apis::FirestoreV1::StructuredQuery

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/firestore_v1/classes.rb,
lib/google/apis/firestore_v1/representations.rb,
lib/google/apis/firestore_v1/representations.rb

Overview

A Firestore query.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ StructuredQuery

Returns a new instance of StructuredQuery.



2277
2278
2279
# File 'lib/google/apis/firestore_v1/classes.rb', line 2277

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#end_atGoogle::Apis::FirestoreV1::Cursor

A position in a query result set. Corresponds to the JSON property endAt



2229
2230
2231
# File 'lib/google/apis/firestore_v1/classes.rb', line 2229

def end_at
  @end_at
end

#fromArray<Google::Apis::FirestoreV1::CollectionSelector>

The collections to query. Corresponds to the JSON property from



2234
2235
2236
# File 'lib/google/apis/firestore_v1/classes.rb', line 2234

def from
  @from
end

#limitFixnum

The maximum number of results to return. Applies after all other constraints. Must be >= 0 if specified. Corresponds to the JSON property limit

Returns:

  • (Fixnum)


2240
2241
2242
# File 'lib/google/apis/firestore_v1/classes.rb', line 2240

def limit
  @limit
end

#offsetFixnum

The number of results to skip. Applies before limit, but after all other constraints. Must be >= 0 if specified. Corresponds to the JSON property offset

Returns:

  • (Fixnum)


2246
2247
2248
# File 'lib/google/apis/firestore_v1/classes.rb', line 2246

def offset
  @offset
end

#order_byArray<Google::Apis::FirestoreV1::Order>

The order to apply to the query results. Firestore guarantees a stable ordering through the following rules: * Any field required to appear in order_by, that is not already specified in order_by, is appended to the order in field name order by default. * If an order on __name__ is not specified, it is appended by default. Fields are appended with the same sort direction as the last order specified, or 'ASCENDING' if no order was specified. For example: * SELECT * FROM Foo ORDER BY A becomes SELECT * FROM Foo ORDER BY A, __name__ * SELECT * FROM Foo ORDER BY A DESC becomes SELECT * FROM Foo ORDER BY A DESC, __name__ DESC * `SELECT * FROM Foo WHERE A

1becomesSELECT * FROM Foo WHERE A > 1 ORDER BY A, name Corresponds to the JSON propertyorderBy`



2260
2261
2262
# File 'lib/google/apis/firestore_v1/classes.rb', line 2260

def order_by
  @order_by
end

#selectGoogle::Apis::FirestoreV1::Projection

The projection of document's fields to return. Corresponds to the JSON property select



2265
2266
2267
# File 'lib/google/apis/firestore_v1/classes.rb', line 2265

def select
  @select
end

#start_atGoogle::Apis::FirestoreV1::Cursor

A position in a query result set. Corresponds to the JSON property startAt



2270
2271
2272
# File 'lib/google/apis/firestore_v1/classes.rb', line 2270

def start_at
  @start_at
end

#whereGoogle::Apis::FirestoreV1::Filter

A filter. Corresponds to the JSON property where



2275
2276
2277
# File 'lib/google/apis/firestore_v1/classes.rb', line 2275

def where
  @where
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2282
2283
2284
2285
2286
2287
2288
2289
2290
2291
# File 'lib/google/apis/firestore_v1/classes.rb', line 2282

def update!(**args)
  @end_at = args[:end_at] if args.key?(:end_at)
  @from = args[:from] if args.key?(:from)
  @limit = args[:limit] if args.key?(:limit)
  @offset = args[:offset] if args.key?(:offset)
  @order_by = args[:order_by] if args.key?(:order_by)
  @select = args[:select] if args.key?(:select)
  @start_at = args[:start_at] if args.key?(:start_at)
  @where = args[:where] if args.key?(:where)
end