Reference documentation and code samples for the Cloud Spanner V1 API class Google::Cloud::Spanner::V1::KeySet.
KeySet defines a collection of Cloud Spanner keys and/or key ranges. All
the keys are expected to be in the same table or index. The keys need
not be sorted in any particular way.
If the same key is specified multiple times in the set (for example
if two ranges, two keys, or a key and a range overlap), Cloud Spanner
behaves as if the key were only specified once.
Inherits
Object
Extended By
Google::Protobuf::MessageExts::ClassMethods
Includes
Google::Protobuf::MessageExts
Methods
#all
defall()->::Boolean
Returns
(::Boolean) — For convenience all can be set to true to indicate that this
KeySet matches all keys in the table or index. Note that any keys
specified in keys or ranges are only yielded once.
#all=
defall=(value)->::Boolean
Parameter
value (::Boolean) — For convenience all can be set to true to indicate that this
KeySet matches all keys in the table or index. Note that any keys
specified in keys or ranges are only yielded once.
Returns
(::Boolean) — For convenience all can be set to true to indicate that this
KeySet matches all keys in the table or index. Note that any keys
specified in keys or ranges are only yielded once.
#keys
defkeys()->::Array<::Google::Protobuf::ListValue>
Returns
(::Array<::Google::Protobuf::ListValue>) — A list of specific keys. Entries in keys should have exactly as
many elements as there are columns in the primary or index key
with which this KeySet is used. Individual key values are
encoded as described here.
value (::Array<::Google::Protobuf::ListValue>) — A list of specific keys. Entries in keys should have exactly as
many elements as there are columns in the primary or index key
with which this KeySet is used. Individual key values are
encoded as described here.
Returns
(::Array<::Google::Protobuf::ListValue>) — A list of specific keys. Entries in keys should have exactly as
many elements as there are columns in the primary or index key
with which this KeySet is used. Individual key values are
encoded as described here.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-28 UTC."],[],[],null,["# Cloud Spanner V1 API - Class Google::Cloud::Spanner::V1::KeySet (v1.10.0)\n\nVersion latestkeyboard_arrow_down\n\n- [1.10.0 (latest)](/ruby/docs/reference/google-cloud-spanner-v1/latest/Google-Cloud-Spanner-V1-KeySet)\n- [1.9.1](/ruby/docs/reference/google-cloud-spanner-v1/1.9.1/Google-Cloud-Spanner-V1-KeySet)\n- [1.8.0](/ruby/docs/reference/google-cloud-spanner-v1/1.8.0/Google-Cloud-Spanner-V1-KeySet)\n- [1.7.1](/ruby/docs/reference/google-cloud-spanner-v1/1.7.1/Google-Cloud-Spanner-V1-KeySet)\n- [1.6.0](/ruby/docs/reference/google-cloud-spanner-v1/1.6.0/Google-Cloud-Spanner-V1-KeySet)\n- [1.5.0](/ruby/docs/reference/google-cloud-spanner-v1/1.5.0/Google-Cloud-Spanner-V1-KeySet)\n- [1.4.0](/ruby/docs/reference/google-cloud-spanner-v1/1.4.0/Google-Cloud-Spanner-V1-KeySet)\n- [1.3.0](/ruby/docs/reference/google-cloud-spanner-v1/1.3.0/Google-Cloud-Spanner-V1-KeySet)\n- [1.2.0](/ruby/docs/reference/google-cloud-spanner-v1/1.2.0/Google-Cloud-Spanner-V1-KeySet)\n- [1.1.0](/ruby/docs/reference/google-cloud-spanner-v1/1.1.0/Google-Cloud-Spanner-V1-KeySet)\n- [1.0.2](/ruby/docs/reference/google-cloud-spanner-v1/1.0.2/Google-Cloud-Spanner-V1-KeySet)\n- [0.27.0](/ruby/docs/reference/google-cloud-spanner-v1/0.27.0/Google-Cloud-Spanner-V1-KeySet)\n- [0.26.0](/ruby/docs/reference/google-cloud-spanner-v1/0.26.0/Google-Cloud-Spanner-V1-KeySet)\n- [0.25.0](/ruby/docs/reference/google-cloud-spanner-v1/0.25.0/Google-Cloud-Spanner-V1-KeySet)\n- [0.24.0](/ruby/docs/reference/google-cloud-spanner-v1/0.24.0/Google-Cloud-Spanner-V1-KeySet)\n- [0.23.0](/ruby/docs/reference/google-cloud-spanner-v1/0.23.0/Google-Cloud-Spanner-V1-KeySet)\n- [0.22.2](/ruby/docs/reference/google-cloud-spanner-v1/0.22.2/Google-Cloud-Spanner-V1-KeySet)\n- [0.21.0](/ruby/docs/reference/google-cloud-spanner-v1/0.21.0/Google-Cloud-Spanner-V1-KeySet)\n- [0.20.1](/ruby/docs/reference/google-cloud-spanner-v1/0.20.1/Google-Cloud-Spanner-V1-KeySet)\n- [0.19.0](/ruby/docs/reference/google-cloud-spanner-v1/0.19.0/Google-Cloud-Spanner-V1-KeySet)\n- [0.18.0](/ruby/docs/reference/google-cloud-spanner-v1/0.18.0/Google-Cloud-Spanner-V1-KeySet)\n- [0.17.0](/ruby/docs/reference/google-cloud-spanner-v1/0.17.0/Google-Cloud-Spanner-V1-KeySet)\n- [0.16.0](/ruby/docs/reference/google-cloud-spanner-v1/0.16.0/Google-Cloud-Spanner-V1-KeySet)\n- [0.15.1](/ruby/docs/reference/google-cloud-spanner-v1/0.15.1/Google-Cloud-Spanner-V1-KeySet)\n- [0.14.1](/ruby/docs/reference/google-cloud-spanner-v1/0.14.1/Google-Cloud-Spanner-V1-KeySet)\n- [0.13.0](/ruby/docs/reference/google-cloud-spanner-v1/0.13.0/Google-Cloud-Spanner-V1-KeySet)\n- [0.12.0](/ruby/docs/reference/google-cloud-spanner-v1/0.12.0/Google-Cloud-Spanner-V1-KeySet)\n- [0.11.0](/ruby/docs/reference/google-cloud-spanner-v1/0.11.0/Google-Cloud-Spanner-V1-KeySet)\n- [0.10.0](/ruby/docs/reference/google-cloud-spanner-v1/0.10.0/Google-Cloud-Spanner-V1-KeySet)\n- [0.9.0](/ruby/docs/reference/google-cloud-spanner-v1/0.9.0/Google-Cloud-Spanner-V1-KeySet)\n- [0.8.1](/ruby/docs/reference/google-cloud-spanner-v1/0.8.1/Google-Cloud-Spanner-V1-KeySet)\n- [0.7.4](/ruby/docs/reference/google-cloud-spanner-v1/0.7.4/Google-Cloud-Spanner-V1-KeySet) \nReference documentation and code samples for the Cloud Spanner V1 API class Google::Cloud::Spanner::V1::KeySet.\n\n`KeySet` defines a collection of Cloud Spanner keys and/or key ranges. All\nthe keys are expected to be in the same table or index. The keys need\nnot be sorted in any particular way.\n\n\n\u003cbr /\u003e\n\nIf the same key is specified multiple times in the set (for example\nif two ranges, two keys, or a key and a range overlap), Cloud Spanner\nbehaves as if the key were only specified once. \n\nInherits\n--------\n\n- Object \n\nExtended By\n-----------\n\n- Google::Protobuf::MessageExts::ClassMethods \n\nIncludes\n--------\n\n- Google::Protobuf::MessageExts\n\nMethods\n-------\n\n### #all\n\n def all() -\u003e ::Boolean\n\n**Returns**\n\n- (::Boolean) --- For convenience `all` can be set to `true` to indicate that this `KeySet` matches all keys in the table or index. Note that any keys specified in `keys` or `ranges` are only yielded once.\n\n### #all=\n\n def all=(value) -\u003e ::Boolean\n\n**Parameter**\n\n- **value** (::Boolean) --- For convenience `all` can be set to `true` to indicate that this `KeySet` matches all keys in the table or index. Note that any keys specified in `keys` or `ranges` are only yielded once. \n**Returns**\n\n- (::Boolean) --- For convenience `all` can be set to `true` to indicate that this `KeySet` matches all keys in the table or index. Note that any keys specified in `keys` or `ranges` are only yielded once.\n\n### #keys\n\n def keys() -\u003e ::Array\u003c::Google::Protobuf::ListValue\u003e\n\n**Returns**\n\n- (::Array\\\u003c[::Google::Protobuf::ListValue](./Google-Protobuf-ListValue)\\\u003e) --- A list of specific keys. Entries in `keys` should have exactly as many elements as there are columns in the primary or index key with which this `KeySet` is used. Individual key values are encoded as described [here](/ruby/docs/reference/google-cloud-spanner-v1/latest/Google-Cloud-Spanner-V1-TypeCode \"Google::Cloud::Spanner::V1::TypeCode (module)\").\n\n### #keys=\n\n def keys=(value) -\u003e ::Array\u003c::Google::Protobuf::ListValue\u003e\n\n**Parameter**\n\n- **value** (::Array\\\u003c[::Google::Protobuf::ListValue](./Google-Protobuf-ListValue)\\\u003e) --- A list of specific keys. Entries in `keys` should have exactly as many elements as there are columns in the primary or index key with which this `KeySet` is used. Individual key values are encoded as described [here](/ruby/docs/reference/google-cloud-spanner-v1/latest/Google-Cloud-Spanner-V1-TypeCode \"Google::Cloud::Spanner::V1::TypeCode (module)\"). \n**Returns**\n\n- (::Array\\\u003c[::Google::Protobuf::ListValue](./Google-Protobuf-ListValue)\\\u003e) --- A list of specific keys. Entries in `keys` should have exactly as many elements as there are columns in the primary or index key with which this `KeySet` is used. Individual key values are encoded as described [here](/ruby/docs/reference/google-cloud-spanner-v1/latest/Google-Cloud-Spanner-V1-TypeCode \"Google::Cloud::Spanner::V1::TypeCode (module)\").\n\n### #ranges\n\n def ranges() -\u003e ::Array\u003c::Google::Cloud::Spanner::V1::KeyRange\u003e\n\n**Returns**\n\n- (::Array\\\u003c[::Google::Cloud::Spanner::V1::KeyRange](./Google-Cloud-Spanner-V1-KeyRange)\\\u003e) --- A list of key ranges. See [KeyRange](/ruby/docs/reference/google-cloud-spanner-v1/latest/Google-Cloud-Spanner-V1-KeyRange \"Google::Cloud::Spanner::V1::KeyRange (class)\") for more information about key range specifications.\n\n### #ranges=\n\n def ranges=(value) -\u003e ::Array\u003c::Google::Cloud::Spanner::V1::KeyRange\u003e\n\n**Parameter**\n\n- **value** (::Array\\\u003c[::Google::Cloud::Spanner::V1::KeyRange](./Google-Cloud-Spanner-V1-KeyRange)\\\u003e) --- A list of key ranges. See [KeyRange](/ruby/docs/reference/google-cloud-spanner-v1/latest/Google-Cloud-Spanner-V1-KeyRange \"Google::Cloud::Spanner::V1::KeyRange (class)\") for more information about key range specifications. \n**Returns**\n\n- (::Array\\\u003c[::Google::Cloud::Spanner::V1::KeyRange](./Google-Cloud-Spanner-V1-KeyRange)\\\u003e) --- A list of key ranges. See [KeyRange](/ruby/docs/reference/google-cloud-spanner-v1/latest/Google-Cloud-Spanner-V1-KeyRange \"Google::Cloud::Spanner::V1::KeyRange (class)\") for more information about key range specifications."]]