/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Represents the input of a Scan
operation.See
* Also:
AWS
* API Reference
The name of the table containing the requested items; or, if you provide
* IndexName
, the name of the table to which that index belongs.
The name of the table containing the requested items; or, if you provide
* IndexName
, the name of the table to which that index belongs.
The name of the table containing the requested items; or, if you provide
* IndexName
, the name of the table to which that index belongs.
The name of the table containing the requested items; or, if you provide
* IndexName
, the name of the table to which that index belongs.
The name of the table containing the requested items; or, if you provide
* IndexName
, the name of the table to which that index belongs.
The name of the table containing the requested items; or, if you provide
* IndexName
, the name of the table to which that index belongs.
The name of the table containing the requested items; or, if you provide
* IndexName
, the name of the table to which that index belongs.
The name of the table containing the requested items; or, if you provide
* IndexName
, the name of the table to which that index belongs.
The name of a secondary index to scan. This index can be any local secondary
* index or global secondary index. Note that if you use the IndexName
* parameter, you must also provide TableName
.
The name of a secondary index to scan. This index can be any local secondary
* index or global secondary index. Note that if you use the IndexName
* parameter, you must also provide TableName
.
The name of a secondary index to scan. This index can be any local secondary
* index or global secondary index. Note that if you use the IndexName
* parameter, you must also provide TableName
.
The name of a secondary index to scan. This index can be any local secondary
* index or global secondary index. Note that if you use the IndexName
* parameter, you must also provide TableName
.
The name of a secondary index to scan. This index can be any local secondary
* index or global secondary index. Note that if you use the IndexName
* parameter, you must also provide TableName
.
The name of a secondary index to scan. This index can be any local secondary
* index or global secondary index. Note that if you use the IndexName
* parameter, you must also provide TableName
.
The name of a secondary index to scan. This index can be any local secondary
* index or global secondary index. Note that if you use the IndexName
* parameter, you must also provide TableName
.
The name of a secondary index to scan. This index can be any local secondary
* index or global secondary index. Note that if you use the IndexName
* parameter, you must also provide TableName
.
This is a legacy parameter. Use ProjectionExpression
instead.
* For more information, see AttributesToGet
* in the Amazon DynamoDB Developer Guide.
This is a legacy parameter. Use ProjectionExpression
instead.
* For more information, see AttributesToGet
* in the Amazon DynamoDB Developer Guide.
This is a legacy parameter. Use ProjectionExpression
instead.
* For more information, see AttributesToGet
* in the Amazon DynamoDB Developer Guide.
This is a legacy parameter. Use ProjectionExpression
instead.
* For more information, see AttributesToGet
* in the Amazon DynamoDB Developer Guide.
This is a legacy parameter. Use ProjectionExpression
instead.
* For more information, see AttributesToGet
* in the Amazon DynamoDB Developer Guide.
This is a legacy parameter. Use ProjectionExpression
instead.
* For more information, see AttributesToGet
* in the Amazon DynamoDB Developer Guide.
This is a legacy parameter. Use ProjectionExpression
instead.
* For more information, see AttributesToGet
* in the Amazon DynamoDB Developer Guide.
This is a legacy parameter. Use ProjectionExpression
instead.
* For more information, see AttributesToGet
* in the Amazon DynamoDB Developer Guide.
This is a legacy parameter. Use ProjectionExpression
instead.
* For more information, see AttributesToGet
* in the Amazon DynamoDB Developer Guide.
The maximum number of items to evaluate (not necessarily the number of
* matching items). If DynamoDB processes the number of items up to the limit while
* processing the results, it stops the operation and returns the matching values
* up to that point, and a key in LastEvaluatedKey
to apply in a
* subsequent operation, so that you can pick up where you left off. Also, if the
* processed dataset size exceeds 1 MB before DynamoDB reaches this limit, it stops
* the operation and returns the matching values up to the limit, and a key in
* LastEvaluatedKey
to apply in a subsequent operation to continue the
* operation. For more information, see Working
* with Queries in the Amazon DynamoDB Developer Guide.
The maximum number of items to evaluate (not necessarily the number of
* matching items). If DynamoDB processes the number of items up to the limit while
* processing the results, it stops the operation and returns the matching values
* up to that point, and a key in LastEvaluatedKey
to apply in a
* subsequent operation, so that you can pick up where you left off. Also, if the
* processed dataset size exceeds 1 MB before DynamoDB reaches this limit, it stops
* the operation and returns the matching values up to the limit, and a key in
* LastEvaluatedKey
to apply in a subsequent operation to continue the
* operation. For more information, see Working
* with Queries in the Amazon DynamoDB Developer Guide.
The maximum number of items to evaluate (not necessarily the number of
* matching items). If DynamoDB processes the number of items up to the limit while
* processing the results, it stops the operation and returns the matching values
* up to that point, and a key in LastEvaluatedKey
to apply in a
* subsequent operation, so that you can pick up where you left off. Also, if the
* processed dataset size exceeds 1 MB before DynamoDB reaches this limit, it stops
* the operation and returns the matching values up to the limit, and a key in
* LastEvaluatedKey
to apply in a subsequent operation to continue the
* operation. For more information, see Working
* with Queries in the Amazon DynamoDB Developer Guide.
The maximum number of items to evaluate (not necessarily the number of
* matching items). If DynamoDB processes the number of items up to the limit while
* processing the results, it stops the operation and returns the matching values
* up to that point, and a key in LastEvaluatedKey
to apply in a
* subsequent operation, so that you can pick up where you left off. Also, if the
* processed dataset size exceeds 1 MB before DynamoDB reaches this limit, it stops
* the operation and returns the matching values up to the limit, and a key in
* LastEvaluatedKey
to apply in a subsequent operation to continue the
* operation. For more information, see Working
* with Queries in the Amazon DynamoDB Developer Guide.
The attributes to be returned in the result. You can retrieve all item * attributes, specific item attributes, the count of matching items, or in the * case of an index, some or all of the attributes projected into the index.
* ALL_ATTRIBUTES
- Returns all of the item attributes
* from the specified table or index. If you query a local secondary index, then
* for each matching item in the index, DynamoDB fetches the entire item from the
* parent table. If the index is configured to project all item attributes, then
* all of the data can be obtained from the local secondary index, and no fetching
* is required.
ALL_PROJECTED_ATTRIBUTES
- Allowed
* only when querying an index. Retrieves all attributes that have been projected
* into the index. If the index is configured to project all attributes, this
* return value is equivalent to specifying ALL_ATTRIBUTES
.
COUNT
- Returns the number of matching items, rather than
* the matching items themselves. Note that this uses the same quantity of read
* capacity units as getting the items, and is subject to the same item size
* calculations.
SPECIFIC_ATTRIBUTES
- Returns only
* the attributes listed in ProjectionExpression
. This return value is
* equivalent to specifying ProjectionExpression
without specifying
* any value for Select
.
If you query or scan a local secondary * index and request only attributes that are projected into that index, the * operation reads only the index and not the table. If any of the requested * attributes are not projected into the local secondary index, DynamoDB fetches * each of these attributes from the parent table. This extra fetching incurs * additional throughput cost and latency.
If you query or scan a global * secondary index, you can only request attributes that are projected into the * index. Global secondary index queries cannot fetch attributes from the parent * table.
If neither Select
nor
* ProjectionExpression
are specified, DynamoDB defaults to
* ALL_ATTRIBUTES
when accessing a table, and
* ALL_PROJECTED_ATTRIBUTES
when accessing an index. You cannot use
* both Select
and ProjectionExpression
together in a
* single request, unless the value for Select
is
* SPECIFIC_ATTRIBUTES
. (This usage is equivalent to specifying
* ProjectionExpression
without any value for
* Select
.)
If you use the
* ProjectionExpression
parameter, then the value for
* Select
can only be SPECIFIC_ATTRIBUTES
. Any other
* value for Select
will return an error.
The attributes to be returned in the result. You can retrieve all item * attributes, specific item attributes, the count of matching items, or in the * case of an index, some or all of the attributes projected into the index.
* ALL_ATTRIBUTES
- Returns all of the item attributes
* from the specified table or index. If you query a local secondary index, then
* for each matching item in the index, DynamoDB fetches the entire item from the
* parent table. If the index is configured to project all item attributes, then
* all of the data can be obtained from the local secondary index, and no fetching
* is required.
ALL_PROJECTED_ATTRIBUTES
- Allowed
* only when querying an index. Retrieves all attributes that have been projected
* into the index. If the index is configured to project all attributes, this
* return value is equivalent to specifying ALL_ATTRIBUTES
.
COUNT
- Returns the number of matching items, rather than
* the matching items themselves. Note that this uses the same quantity of read
* capacity units as getting the items, and is subject to the same item size
* calculations.
SPECIFIC_ATTRIBUTES
- Returns only
* the attributes listed in ProjectionExpression
. This return value is
* equivalent to specifying ProjectionExpression
without specifying
* any value for Select
.
If you query or scan a local secondary * index and request only attributes that are projected into that index, the * operation reads only the index and not the table. If any of the requested * attributes are not projected into the local secondary index, DynamoDB fetches * each of these attributes from the parent table. This extra fetching incurs * additional throughput cost and latency.
If you query or scan a global * secondary index, you can only request attributes that are projected into the * index. Global secondary index queries cannot fetch attributes from the parent * table.
If neither Select
nor
* ProjectionExpression
are specified, DynamoDB defaults to
* ALL_ATTRIBUTES
when accessing a table, and
* ALL_PROJECTED_ATTRIBUTES
when accessing an index. You cannot use
* both Select
and ProjectionExpression
together in a
* single request, unless the value for Select
is
* SPECIFIC_ATTRIBUTES
. (This usage is equivalent to specifying
* ProjectionExpression
without any value for
* Select
.)
If you use the
* ProjectionExpression
parameter, then the value for
* Select
can only be SPECIFIC_ATTRIBUTES
. Any other
* value for Select
will return an error.
The attributes to be returned in the result. You can retrieve all item * attributes, specific item attributes, the count of matching items, or in the * case of an index, some or all of the attributes projected into the index.
* ALL_ATTRIBUTES
- Returns all of the item attributes
* from the specified table or index. If you query a local secondary index, then
* for each matching item in the index, DynamoDB fetches the entire item from the
* parent table. If the index is configured to project all item attributes, then
* all of the data can be obtained from the local secondary index, and no fetching
* is required.
ALL_PROJECTED_ATTRIBUTES
- Allowed
* only when querying an index. Retrieves all attributes that have been projected
* into the index. If the index is configured to project all attributes, this
* return value is equivalent to specifying ALL_ATTRIBUTES
.
COUNT
- Returns the number of matching items, rather than
* the matching items themselves. Note that this uses the same quantity of read
* capacity units as getting the items, and is subject to the same item size
* calculations.
SPECIFIC_ATTRIBUTES
- Returns only
* the attributes listed in ProjectionExpression
. This return value is
* equivalent to specifying ProjectionExpression
without specifying
* any value for Select
.
If you query or scan a local secondary * index and request only attributes that are projected into that index, the * operation reads only the index and not the table. If any of the requested * attributes are not projected into the local secondary index, DynamoDB fetches * each of these attributes from the parent table. This extra fetching incurs * additional throughput cost and latency.
If you query or scan a global * secondary index, you can only request attributes that are projected into the * index. Global secondary index queries cannot fetch attributes from the parent * table.
If neither Select
nor
* ProjectionExpression
are specified, DynamoDB defaults to
* ALL_ATTRIBUTES
when accessing a table, and
* ALL_PROJECTED_ATTRIBUTES
when accessing an index. You cannot use
* both Select
and ProjectionExpression
together in a
* single request, unless the value for Select
is
* SPECIFIC_ATTRIBUTES
. (This usage is equivalent to specifying
* ProjectionExpression
without any value for
* Select
.)
If you use the
* ProjectionExpression
parameter, then the value for
* Select
can only be SPECIFIC_ATTRIBUTES
. Any other
* value for Select
will return an error.
The attributes to be returned in the result. You can retrieve all item * attributes, specific item attributes, the count of matching items, or in the * case of an index, some or all of the attributes projected into the index.
* ALL_ATTRIBUTES
- Returns all of the item attributes
* from the specified table or index. If you query a local secondary index, then
* for each matching item in the index, DynamoDB fetches the entire item from the
* parent table. If the index is configured to project all item attributes, then
* all of the data can be obtained from the local secondary index, and no fetching
* is required.
ALL_PROJECTED_ATTRIBUTES
- Allowed
* only when querying an index. Retrieves all attributes that have been projected
* into the index. If the index is configured to project all attributes, this
* return value is equivalent to specifying ALL_ATTRIBUTES
.
COUNT
- Returns the number of matching items, rather than
* the matching items themselves. Note that this uses the same quantity of read
* capacity units as getting the items, and is subject to the same item size
* calculations.
SPECIFIC_ATTRIBUTES
- Returns only
* the attributes listed in ProjectionExpression
. This return value is
* equivalent to specifying ProjectionExpression
without specifying
* any value for Select
.
If you query or scan a local secondary * index and request only attributes that are projected into that index, the * operation reads only the index and not the table. If any of the requested * attributes are not projected into the local secondary index, DynamoDB fetches * each of these attributes from the parent table. This extra fetching incurs * additional throughput cost and latency.
If you query or scan a global * secondary index, you can only request attributes that are projected into the * index. Global secondary index queries cannot fetch attributes from the parent * table.
If neither Select
nor
* ProjectionExpression
are specified, DynamoDB defaults to
* ALL_ATTRIBUTES
when accessing a table, and
* ALL_PROJECTED_ATTRIBUTES
when accessing an index. You cannot use
* both Select
and ProjectionExpression
together in a
* single request, unless the value for Select
is
* SPECIFIC_ATTRIBUTES
. (This usage is equivalent to specifying
* ProjectionExpression
without any value for
* Select
.)
If you use the
* ProjectionExpression
parameter, then the value for
* Select
can only be SPECIFIC_ATTRIBUTES
. Any other
* value for Select
will return an error.
The attributes to be returned in the result. You can retrieve all item * attributes, specific item attributes, the count of matching items, or in the * case of an index, some or all of the attributes projected into the index.
* ALL_ATTRIBUTES
- Returns all of the item attributes
* from the specified table or index. If you query a local secondary index, then
* for each matching item in the index, DynamoDB fetches the entire item from the
* parent table. If the index is configured to project all item attributes, then
* all of the data can be obtained from the local secondary index, and no fetching
* is required.
ALL_PROJECTED_ATTRIBUTES
- Allowed
* only when querying an index. Retrieves all attributes that have been projected
* into the index. If the index is configured to project all attributes, this
* return value is equivalent to specifying ALL_ATTRIBUTES
.
COUNT
- Returns the number of matching items, rather than
* the matching items themselves. Note that this uses the same quantity of read
* capacity units as getting the items, and is subject to the same item size
* calculations.
SPECIFIC_ATTRIBUTES
- Returns only
* the attributes listed in ProjectionExpression
. This return value is
* equivalent to specifying ProjectionExpression
without specifying
* any value for Select
.
If you query or scan a local secondary * index and request only attributes that are projected into that index, the * operation reads only the index and not the table. If any of the requested * attributes are not projected into the local secondary index, DynamoDB fetches * each of these attributes from the parent table. This extra fetching incurs * additional throughput cost and latency.
If you query or scan a global * secondary index, you can only request attributes that are projected into the * index. Global secondary index queries cannot fetch attributes from the parent * table.
If neither Select
nor
* ProjectionExpression
are specified, DynamoDB defaults to
* ALL_ATTRIBUTES
when accessing a table, and
* ALL_PROJECTED_ATTRIBUTES
when accessing an index. You cannot use
* both Select
and ProjectionExpression
together in a
* single request, unless the value for Select
is
* SPECIFIC_ATTRIBUTES
. (This usage is equivalent to specifying
* ProjectionExpression
without any value for
* Select
.)
If you use the
* ProjectionExpression
parameter, then the value for
* Select
can only be SPECIFIC_ATTRIBUTES
. Any other
* value for Select
will return an error.
The attributes to be returned in the result. You can retrieve all item * attributes, specific item attributes, the count of matching items, or in the * case of an index, some or all of the attributes projected into the index.
* ALL_ATTRIBUTES
- Returns all of the item attributes
* from the specified table or index. If you query a local secondary index, then
* for each matching item in the index, DynamoDB fetches the entire item from the
* parent table. If the index is configured to project all item attributes, then
* all of the data can be obtained from the local secondary index, and no fetching
* is required.
ALL_PROJECTED_ATTRIBUTES
- Allowed
* only when querying an index. Retrieves all attributes that have been projected
* into the index. If the index is configured to project all attributes, this
* return value is equivalent to specifying ALL_ATTRIBUTES
.
COUNT
- Returns the number of matching items, rather than
* the matching items themselves. Note that this uses the same quantity of read
* capacity units as getting the items, and is subject to the same item size
* calculations.
SPECIFIC_ATTRIBUTES
- Returns only
* the attributes listed in ProjectionExpression
. This return value is
* equivalent to specifying ProjectionExpression
without specifying
* any value for Select
.
If you query or scan a local secondary * index and request only attributes that are projected into that index, the * operation reads only the index and not the table. If any of the requested * attributes are not projected into the local secondary index, DynamoDB fetches * each of these attributes from the parent table. This extra fetching incurs * additional throughput cost and latency.
If you query or scan a global * secondary index, you can only request attributes that are projected into the * index. Global secondary index queries cannot fetch attributes from the parent * table.
If neither Select
nor
* ProjectionExpression
are specified, DynamoDB defaults to
* ALL_ATTRIBUTES
when accessing a table, and
* ALL_PROJECTED_ATTRIBUTES
when accessing an index. You cannot use
* both Select
and ProjectionExpression
together in a
* single request, unless the value for Select
is
* SPECIFIC_ATTRIBUTES
. (This usage is equivalent to specifying
* ProjectionExpression
without any value for
* Select
.)
If you use the
* ProjectionExpression
parameter, then the value for
* Select
can only be SPECIFIC_ATTRIBUTES
. Any other
* value for Select
will return an error.
This is a legacy parameter. Use FilterExpression
instead. For
* more information, see ScanFilter
* in the Amazon DynamoDB Developer Guide.
This is a legacy parameter. Use FilterExpression
instead. For
* more information, see ScanFilter
* in the Amazon DynamoDB Developer Guide.
This is a legacy parameter. Use FilterExpression
instead. For
* more information, see ScanFilter
* in the Amazon DynamoDB Developer Guide.
This is a legacy parameter. Use FilterExpression
instead. For
* more information, see ScanFilter
* in the Amazon DynamoDB Developer Guide.
This is a legacy parameter. Use FilterExpression
instead. For
* more information, see ScanFilter
* in the Amazon DynamoDB Developer Guide.
This is a legacy parameter. Use FilterExpression
instead. For
* more information, see ScanFilter
* in the Amazon DynamoDB Developer Guide.
This is a legacy parameter. Use FilterExpression
instead. For
* more information, see ScanFilter
* in the Amazon DynamoDB Developer Guide.
This is a legacy parameter. Use FilterExpression
instead. For
* more information, see ScanFilter
* in the Amazon DynamoDB Developer Guide.
This is a legacy parameter. Use FilterExpression
instead. For
* more information, see ScanFilter
* in the Amazon DynamoDB Developer Guide.
This is a legacy parameter. Use FilterExpression
instead. For
* more information, see ScanFilter
* in the Amazon DynamoDB Developer Guide.
This is a legacy parameter. Use FilterExpression
instead. For
* more information, see ScanFilter
* in the Amazon DynamoDB Developer Guide.
This is a legacy parameter. Use FilterExpression
instead. For
* more information, see ScanFilter
* in the Amazon DynamoDB Developer Guide.
This is a legacy parameter. Use FilterExpression
instead. For
* more information, see ConditionalOperator
* in the Amazon DynamoDB Developer Guide.
This is a legacy parameter. Use FilterExpression
instead. For
* more information, see ConditionalOperator
* in the Amazon DynamoDB Developer Guide.
This is a legacy parameter. Use FilterExpression
instead. For
* more information, see ConditionalOperator
* in the Amazon DynamoDB Developer Guide.
This is a legacy parameter. Use FilterExpression
instead. For
* more information, see ConditionalOperator
* in the Amazon DynamoDB Developer Guide.
This is a legacy parameter. Use FilterExpression
instead. For
* more information, see ConditionalOperator
* in the Amazon DynamoDB Developer Guide.
This is a legacy parameter. Use FilterExpression
instead. For
* more information, see ConditionalOperator
* in the Amazon DynamoDB Developer Guide.
The primary key of the first item that this operation will evaluate. Use the
* value that was returned for LastEvaluatedKey
in the previous
* operation.
The data type for ExclusiveStartKey
must be
* String, Number or Binary. No set data types are allowed.
In a parallel
* scan, a Scan
request that includes ExclusiveStartKey
* must specify the same segment whose previous Scan
returned the
* corresponding value of LastEvaluatedKey
.
The primary key of the first item that this operation will evaluate. Use the
* value that was returned for LastEvaluatedKey
in the previous
* operation.
The data type for ExclusiveStartKey
must be
* String, Number or Binary. No set data types are allowed.
In a parallel
* scan, a Scan
request that includes ExclusiveStartKey
* must specify the same segment whose previous Scan
returned the
* corresponding value of LastEvaluatedKey
.
The primary key of the first item that this operation will evaluate. Use the
* value that was returned for LastEvaluatedKey
in the previous
* operation.
The data type for ExclusiveStartKey
must be
* String, Number or Binary. No set data types are allowed.
In a parallel
* scan, a Scan
request that includes ExclusiveStartKey
* must specify the same segment whose previous Scan
returned the
* corresponding value of LastEvaluatedKey
.
The primary key of the first item that this operation will evaluate. Use the
* value that was returned for LastEvaluatedKey
in the previous
* operation.
The data type for ExclusiveStartKey
must be
* String, Number or Binary. No set data types are allowed.
In a parallel
* scan, a Scan
request that includes ExclusiveStartKey
* must specify the same segment whose previous Scan
returned the
* corresponding value of LastEvaluatedKey
.
The primary key of the first item that this operation will evaluate. Use the
* value that was returned for LastEvaluatedKey
in the previous
* operation.
The data type for ExclusiveStartKey
must be
* String, Number or Binary. No set data types are allowed.
In a parallel
* scan, a Scan
request that includes ExclusiveStartKey
* must specify the same segment whose previous Scan
returned the
* corresponding value of LastEvaluatedKey
.
The primary key of the first item that this operation will evaluate. Use the
* value that was returned for LastEvaluatedKey
in the previous
* operation.
The data type for ExclusiveStartKey
must be
* String, Number or Binary. No set data types are allowed.
In a parallel
* scan, a Scan
request that includes ExclusiveStartKey
* must specify the same segment whose previous Scan
returned the
* corresponding value of LastEvaluatedKey
.
The primary key of the first item that this operation will evaluate. Use the
* value that was returned for LastEvaluatedKey
in the previous
* operation.
The data type for ExclusiveStartKey
must be
* String, Number or Binary. No set data types are allowed.
In a parallel
* scan, a Scan
request that includes ExclusiveStartKey
* must specify the same segment whose previous Scan
returned the
* corresponding value of LastEvaluatedKey
.
The primary key of the first item that this operation will evaluate. Use the
* value that was returned for LastEvaluatedKey
in the previous
* operation.
The data type for ExclusiveStartKey
must be
* String, Number or Binary. No set data types are allowed.
In a parallel
* scan, a Scan
request that includes ExclusiveStartKey
* must specify the same segment whose previous Scan
returned the
* corresponding value of LastEvaluatedKey
.
The primary key of the first item that this operation will evaluate. Use the
* value that was returned for LastEvaluatedKey
in the previous
* operation.
The data type for ExclusiveStartKey
must be
* String, Number or Binary. No set data types are allowed.
In a parallel
* scan, a Scan
request that includes ExclusiveStartKey
* must specify the same segment whose previous Scan
returned the
* corresponding value of LastEvaluatedKey
.
The primary key of the first item that this operation will evaluate. Use the
* value that was returned for LastEvaluatedKey
in the previous
* operation.
The data type for ExclusiveStartKey
must be
* String, Number or Binary. No set data types are allowed.
In a parallel
* scan, a Scan
request that includes ExclusiveStartKey
* must specify the same segment whose previous Scan
returned the
* corresponding value of LastEvaluatedKey
.
The primary key of the first item that this operation will evaluate. Use the
* value that was returned for LastEvaluatedKey
in the previous
* operation.
The data type for ExclusiveStartKey
must be
* String, Number or Binary. No set data types are allowed.
In a parallel
* scan, a Scan
request that includes ExclusiveStartKey
* must specify the same segment whose previous Scan
returned the
* corresponding value of LastEvaluatedKey
.
The primary key of the first item that this operation will evaluate. Use the
* value that was returned for LastEvaluatedKey
in the previous
* operation.
The data type for ExclusiveStartKey
must be
* String, Number or Binary. No set data types are allowed.
In a parallel
* scan, a Scan
request that includes ExclusiveStartKey
* must specify the same segment whose previous Scan
returned the
* corresponding value of LastEvaluatedKey
.
For a parallel Scan
request, TotalSegments
* represents the total number of segments into which the Scan
* operation will be divided. The value of TotalSegments
corresponds
* to the number of application workers that will perform the parallel scan. For
* example, if you want to use four application threads to scan a table or an
* index, specify a TotalSegments
value of 4.
The value for
* TotalSegments
must be greater than or equal to 1, and less than or
* equal to 1000000. If you specify a TotalSegments
value of 1, the
* Scan
operation will be sequential rather than parallel.
If
* you specify TotalSegments
, you must also specify
* Segment
.
For a parallel Scan
request, TotalSegments
* represents the total number of segments into which the Scan
* operation will be divided. The value of TotalSegments
corresponds
* to the number of application workers that will perform the parallel scan. For
* example, if you want to use four application threads to scan a table or an
* index, specify a TotalSegments
value of 4.
The value for
* TotalSegments
must be greater than or equal to 1, and less than or
* equal to 1000000. If you specify a TotalSegments
value of 1, the
* Scan
operation will be sequential rather than parallel.
If
* you specify TotalSegments
, you must also specify
* Segment
.
For a parallel Scan
request, TotalSegments
* represents the total number of segments into which the Scan
* operation will be divided. The value of TotalSegments
corresponds
* to the number of application workers that will perform the parallel scan. For
* example, if you want to use four application threads to scan a table or an
* index, specify a TotalSegments
value of 4.
The value for
* TotalSegments
must be greater than or equal to 1, and less than or
* equal to 1000000. If you specify a TotalSegments
value of 1, the
* Scan
operation will be sequential rather than parallel.
If
* you specify TotalSegments
, you must also specify
* Segment
.
For a parallel Scan
request, TotalSegments
* represents the total number of segments into which the Scan
* operation will be divided. The value of TotalSegments
corresponds
* to the number of application workers that will perform the parallel scan. For
* example, if you want to use four application threads to scan a table or an
* index, specify a TotalSegments
value of 4.
The value for
* TotalSegments
must be greater than or equal to 1, and less than or
* equal to 1000000. If you specify a TotalSegments
value of 1, the
* Scan
operation will be sequential rather than parallel.
If
* you specify TotalSegments
, you must also specify
* Segment
.
For a parallel Scan
request, Segment
identifies an
* individual segment to be scanned by an application worker.
Segment IDs
* are zero-based, so the first segment is always 0. For example, if you want to
* use four application threads to scan a table or an index, then the first thread
* specifies a Segment
value of 0, the second thread specifies 1, and
* so on.
The value of LastEvaluatedKey
returned from a
* parallel Scan
request must be used as
* ExclusiveStartKey
with the same segment ID in a subsequent
* Scan
operation.
The value for Segment
must be
* greater than or equal to 0, and less than the value provided for
* TotalSegments
.
If you provide Segment
, you must
* also provide TotalSegments
.
For a parallel Scan
request, Segment
identifies an
* individual segment to be scanned by an application worker.
Segment IDs
* are zero-based, so the first segment is always 0. For example, if you want to
* use four application threads to scan a table or an index, then the first thread
* specifies a Segment
value of 0, the second thread specifies 1, and
* so on.
The value of LastEvaluatedKey
returned from a
* parallel Scan
request must be used as
* ExclusiveStartKey
with the same segment ID in a subsequent
* Scan
operation.
The value for Segment
must be
* greater than or equal to 0, and less than the value provided for
* TotalSegments
.
If you provide Segment
, you must
* also provide TotalSegments
.
For a parallel Scan
request, Segment
identifies an
* individual segment to be scanned by an application worker.
Segment IDs
* are zero-based, so the first segment is always 0. For example, if you want to
* use four application threads to scan a table or an index, then the first thread
* specifies a Segment
value of 0, the second thread specifies 1, and
* so on.
The value of LastEvaluatedKey
returned from a
* parallel Scan
request must be used as
* ExclusiveStartKey
with the same segment ID in a subsequent
* Scan
operation.
The value for Segment
must be
* greater than or equal to 0, and less than the value provided for
* TotalSegments
.
If you provide Segment
, you must
* also provide TotalSegments
.
For a parallel Scan
request, Segment
identifies an
* individual segment to be scanned by an application worker.
Segment IDs
* are zero-based, so the first segment is always 0. For example, if you want to
* use four application threads to scan a table or an index, then the first thread
* specifies a Segment
value of 0, the second thread specifies 1, and
* so on.
The value of LastEvaluatedKey
returned from a
* parallel Scan
request must be used as
* ExclusiveStartKey
with the same segment ID in a subsequent
* Scan
operation.
The value for Segment
must be
* greater than or equal to 0, and less than the value provided for
* TotalSegments
.
If you provide Segment
, you must
* also provide TotalSegments
.
A string that identifies one or more attributes to retrieve from the * specified table or index. These attributes can include scalars, sets, or * elements of a JSON document. The attributes in the expression must be separated * by commas.
If no attribute names are specified, then all attributes will * be returned. If any of the requested attributes are not found, they will not * appear in the result.
For more information, see Specifying * Item Attributes in the Amazon DynamoDB Developer Guide.
*/ inline const Aws::String& GetProjectionExpression() const{ return m_projectionExpression; } /** *A string that identifies one or more attributes to retrieve from the * specified table or index. These attributes can include scalars, sets, or * elements of a JSON document. The attributes in the expression must be separated * by commas.
If no attribute names are specified, then all attributes will * be returned. If any of the requested attributes are not found, they will not * appear in the result.
For more information, see Specifying * Item Attributes in the Amazon DynamoDB Developer Guide.
*/ inline bool ProjectionExpressionHasBeenSet() const { return m_projectionExpressionHasBeenSet; } /** *A string that identifies one or more attributes to retrieve from the * specified table or index. These attributes can include scalars, sets, or * elements of a JSON document. The attributes in the expression must be separated * by commas.
If no attribute names are specified, then all attributes will * be returned. If any of the requested attributes are not found, they will not * appear in the result.
For more information, see Specifying * Item Attributes in the Amazon DynamoDB Developer Guide.
*/ inline void SetProjectionExpression(const Aws::String& value) { m_projectionExpressionHasBeenSet = true; m_projectionExpression = value; } /** *A string that identifies one or more attributes to retrieve from the * specified table or index. These attributes can include scalars, sets, or * elements of a JSON document. The attributes in the expression must be separated * by commas.
If no attribute names are specified, then all attributes will * be returned. If any of the requested attributes are not found, they will not * appear in the result.
For more information, see Specifying * Item Attributes in the Amazon DynamoDB Developer Guide.
*/ inline void SetProjectionExpression(Aws::String&& value) { m_projectionExpressionHasBeenSet = true; m_projectionExpression = std::move(value); } /** *A string that identifies one or more attributes to retrieve from the * specified table or index. These attributes can include scalars, sets, or * elements of a JSON document. The attributes in the expression must be separated * by commas.
If no attribute names are specified, then all attributes will * be returned. If any of the requested attributes are not found, they will not * appear in the result.
For more information, see Specifying * Item Attributes in the Amazon DynamoDB Developer Guide.
*/ inline void SetProjectionExpression(const char* value) { m_projectionExpressionHasBeenSet = true; m_projectionExpression.assign(value); } /** *A string that identifies one or more attributes to retrieve from the * specified table or index. These attributes can include scalars, sets, or * elements of a JSON document. The attributes in the expression must be separated * by commas.
If no attribute names are specified, then all attributes will * be returned. If any of the requested attributes are not found, they will not * appear in the result.
For more information, see Specifying * Item Attributes in the Amazon DynamoDB Developer Guide.
*/ inline ScanRequest& WithProjectionExpression(const Aws::String& value) { SetProjectionExpression(value); return *this;} /** *A string that identifies one or more attributes to retrieve from the * specified table or index. These attributes can include scalars, sets, or * elements of a JSON document. The attributes in the expression must be separated * by commas.
If no attribute names are specified, then all attributes will * be returned. If any of the requested attributes are not found, they will not * appear in the result.
For more information, see Specifying * Item Attributes in the Amazon DynamoDB Developer Guide.
*/ inline ScanRequest& WithProjectionExpression(Aws::String&& value) { SetProjectionExpression(std::move(value)); return *this;} /** *A string that identifies one or more attributes to retrieve from the * specified table or index. These attributes can include scalars, sets, or * elements of a JSON document. The attributes in the expression must be separated * by commas.
If no attribute names are specified, then all attributes will * be returned. If any of the requested attributes are not found, they will not * appear in the result.
For more information, see Specifying * Item Attributes in the Amazon DynamoDB Developer Guide.
*/ inline ScanRequest& WithProjectionExpression(const char* value) { SetProjectionExpression(value); return *this;} /** *A string that contains conditions that DynamoDB applies after the
* Scan
operation, but before the data is returned to you. Items that
* do not satisfy the FilterExpression
criteria are not returned.
A FilterExpression
is applied after the items have
* already been read; the process of filtering does not consume any additional read
* capacity units.
For more information, see Filter * Expressions in the Amazon DynamoDB Developer Guide.
*/ inline const Aws::String& GetFilterExpression() const{ return m_filterExpression; } /** *A string that contains conditions that DynamoDB applies after the
* Scan
operation, but before the data is returned to you. Items that
* do not satisfy the FilterExpression
criteria are not returned.
A FilterExpression
is applied after the items have
* already been read; the process of filtering does not consume any additional read
* capacity units.
For more information, see Filter * Expressions in the Amazon DynamoDB Developer Guide.
*/ inline bool FilterExpressionHasBeenSet() const { return m_filterExpressionHasBeenSet; } /** *A string that contains conditions that DynamoDB applies after the
* Scan
operation, but before the data is returned to you. Items that
* do not satisfy the FilterExpression
criteria are not returned.
A FilterExpression
is applied after the items have
* already been read; the process of filtering does not consume any additional read
* capacity units.
For more information, see Filter * Expressions in the Amazon DynamoDB Developer Guide.
*/ inline void SetFilterExpression(const Aws::String& value) { m_filterExpressionHasBeenSet = true; m_filterExpression = value; } /** *A string that contains conditions that DynamoDB applies after the
* Scan
operation, but before the data is returned to you. Items that
* do not satisfy the FilterExpression
criteria are not returned.
A FilterExpression
is applied after the items have
* already been read; the process of filtering does not consume any additional read
* capacity units.
For more information, see Filter * Expressions in the Amazon DynamoDB Developer Guide.
*/ inline void SetFilterExpression(Aws::String&& value) { m_filterExpressionHasBeenSet = true; m_filterExpression = std::move(value); } /** *A string that contains conditions that DynamoDB applies after the
* Scan
operation, but before the data is returned to you. Items that
* do not satisfy the FilterExpression
criteria are not returned.
A FilterExpression
is applied after the items have
* already been read; the process of filtering does not consume any additional read
* capacity units.
For more information, see Filter * Expressions in the Amazon DynamoDB Developer Guide.
*/ inline void SetFilterExpression(const char* value) { m_filterExpressionHasBeenSet = true; m_filterExpression.assign(value); } /** *A string that contains conditions that DynamoDB applies after the
* Scan
operation, but before the data is returned to you. Items that
* do not satisfy the FilterExpression
criteria are not returned.
A FilterExpression
is applied after the items have
* already been read; the process of filtering does not consume any additional read
* capacity units.
For more information, see Filter * Expressions in the Amazon DynamoDB Developer Guide.
*/ inline ScanRequest& WithFilterExpression(const Aws::String& value) { SetFilterExpression(value); return *this;} /** *A string that contains conditions that DynamoDB applies after the
* Scan
operation, but before the data is returned to you. Items that
* do not satisfy the FilterExpression
criteria are not returned.
A FilterExpression
is applied after the items have
* already been read; the process of filtering does not consume any additional read
* capacity units.
For more information, see Filter * Expressions in the Amazon DynamoDB Developer Guide.
*/ inline ScanRequest& WithFilterExpression(Aws::String&& value) { SetFilterExpression(std::move(value)); return *this;} /** *A string that contains conditions that DynamoDB applies after the
* Scan
operation, but before the data is returned to you. Items that
* do not satisfy the FilterExpression
criteria are not returned.
A FilterExpression
is applied after the items have
* already been read; the process of filtering does not consume any additional read
* capacity units.
For more information, see Filter * Expressions in the Amazon DynamoDB Developer Guide.
*/ inline ScanRequest& WithFilterExpression(const char* value) { SetFilterExpression(value); return *this;} /** *One or more substitution tokens for attribute names in an expression. The
* following are some use cases for using
* ExpressionAttributeNames
:
To access an attribute * whose name conflicts with a DynamoDB reserved word.
To create * a placeholder for repeating occurrences of an attribute name in an * expression.
To prevent special characters in an attribute name * from being misinterpreted in an expression.
Use the # * character in an expression to dereference an attribute name. For example, * consider the following attribute name:
Percentile
*
The name of this attribute conflicts with a reserved word,
* so it cannot be used directly in an expression. (For the complete list of
* reserved words, see Reserved
* Words in the Amazon DynamoDB Developer Guide). To work around this,
* you could specify the following for ExpressionAttributeNames
:
{"#P":"Percentile"}
You could * then use this substitution in an expression, as in this example:
#P = :val
Tokens that begin with the * : character are expression attribute values, which are * placeholders for the actual value at runtime.
For more * information on expression attribute names, see Specifying * Item Attributes in the Amazon DynamoDB Developer Guide.
*/ inline const Aws::MapOne or more substitution tokens for attribute names in an expression. The
* following are some use cases for using
* ExpressionAttributeNames
:
To access an attribute * whose name conflicts with a DynamoDB reserved word.
To create * a placeholder for repeating occurrences of an attribute name in an * expression.
To prevent special characters in an attribute name * from being misinterpreted in an expression.
Use the # * character in an expression to dereference an attribute name. For example, * consider the following attribute name:
Percentile
*
The name of this attribute conflicts with a reserved word,
* so it cannot be used directly in an expression. (For the complete list of
* reserved words, see Reserved
* Words in the Amazon DynamoDB Developer Guide). To work around this,
* you could specify the following for ExpressionAttributeNames
:
{"#P":"Percentile"}
You could * then use this substitution in an expression, as in this example:
#P = :val
Tokens that begin with the * : character are expression attribute values, which are * placeholders for the actual value at runtime.
For more * information on expression attribute names, see Specifying * Item Attributes in the Amazon DynamoDB Developer Guide.
*/ inline bool ExpressionAttributeNamesHasBeenSet() const { return m_expressionAttributeNamesHasBeenSet; } /** *One or more substitution tokens for attribute names in an expression. The
* following are some use cases for using
* ExpressionAttributeNames
:
To access an attribute * whose name conflicts with a DynamoDB reserved word.
To create * a placeholder for repeating occurrences of an attribute name in an * expression.
To prevent special characters in an attribute name * from being misinterpreted in an expression.
Use the # * character in an expression to dereference an attribute name. For example, * consider the following attribute name:
Percentile
*
The name of this attribute conflicts with a reserved word,
* so it cannot be used directly in an expression. (For the complete list of
* reserved words, see Reserved
* Words in the Amazon DynamoDB Developer Guide). To work around this,
* you could specify the following for ExpressionAttributeNames
:
{"#P":"Percentile"}
You could * then use this substitution in an expression, as in this example:
#P = :val
Tokens that begin with the * : character are expression attribute values, which are * placeholders for the actual value at runtime.
For more * information on expression attribute names, see Specifying * Item Attributes in the Amazon DynamoDB Developer Guide.
*/ inline void SetExpressionAttributeNames(const Aws::MapOne or more substitution tokens for attribute names in an expression. The
* following are some use cases for using
* ExpressionAttributeNames
:
To access an attribute * whose name conflicts with a DynamoDB reserved word.
To create * a placeholder for repeating occurrences of an attribute name in an * expression.
To prevent special characters in an attribute name * from being misinterpreted in an expression.
Use the # * character in an expression to dereference an attribute name. For example, * consider the following attribute name:
Percentile
*
The name of this attribute conflicts with a reserved word,
* so it cannot be used directly in an expression. (For the complete list of
* reserved words, see Reserved
* Words in the Amazon DynamoDB Developer Guide). To work around this,
* you could specify the following for ExpressionAttributeNames
:
{"#P":"Percentile"}
You could * then use this substitution in an expression, as in this example:
#P = :val
Tokens that begin with the * : character are expression attribute values, which are * placeholders for the actual value at runtime.
For more * information on expression attribute names, see Specifying * Item Attributes in the Amazon DynamoDB Developer Guide.
*/ inline void SetExpressionAttributeNames(Aws::MapOne or more substitution tokens for attribute names in an expression. The
* following are some use cases for using
* ExpressionAttributeNames
:
To access an attribute * whose name conflicts with a DynamoDB reserved word.
To create * a placeholder for repeating occurrences of an attribute name in an * expression.
To prevent special characters in an attribute name * from being misinterpreted in an expression.
Use the # * character in an expression to dereference an attribute name. For example, * consider the following attribute name:
Percentile
*
The name of this attribute conflicts with a reserved word,
* so it cannot be used directly in an expression. (For the complete list of
* reserved words, see Reserved
* Words in the Amazon DynamoDB Developer Guide). To work around this,
* you could specify the following for ExpressionAttributeNames
:
{"#P":"Percentile"}
You could * then use this substitution in an expression, as in this example:
#P = :val
Tokens that begin with the * : character are expression attribute values, which are * placeholders for the actual value at runtime.
For more * information on expression attribute names, see Specifying * Item Attributes in the Amazon DynamoDB Developer Guide.
*/ inline ScanRequest& WithExpressionAttributeNames(const Aws::MapOne or more substitution tokens for attribute names in an expression. The
* following are some use cases for using
* ExpressionAttributeNames
:
To access an attribute * whose name conflicts with a DynamoDB reserved word.
To create * a placeholder for repeating occurrences of an attribute name in an * expression.
To prevent special characters in an attribute name * from being misinterpreted in an expression.
Use the # * character in an expression to dereference an attribute name. For example, * consider the following attribute name:
Percentile
*
The name of this attribute conflicts with a reserved word,
* so it cannot be used directly in an expression. (For the complete list of
* reserved words, see Reserved
* Words in the Amazon DynamoDB Developer Guide). To work around this,
* you could specify the following for ExpressionAttributeNames
:
{"#P":"Percentile"}
You could * then use this substitution in an expression, as in this example:
#P = :val
Tokens that begin with the * : character are expression attribute values, which are * placeholders for the actual value at runtime.
For more * information on expression attribute names, see Specifying * Item Attributes in the Amazon DynamoDB Developer Guide.
*/ inline ScanRequest& WithExpressionAttributeNames(Aws::MapOne or more substitution tokens for attribute names in an expression. The
* following are some use cases for using
* ExpressionAttributeNames
:
To access an attribute * whose name conflicts with a DynamoDB reserved word.
To create * a placeholder for repeating occurrences of an attribute name in an * expression.
To prevent special characters in an attribute name * from being misinterpreted in an expression.
Use the # * character in an expression to dereference an attribute name. For example, * consider the following attribute name:
Percentile
*
The name of this attribute conflicts with a reserved word,
* so it cannot be used directly in an expression. (For the complete list of
* reserved words, see Reserved
* Words in the Amazon DynamoDB Developer Guide). To work around this,
* you could specify the following for ExpressionAttributeNames
:
{"#P":"Percentile"}
You could * then use this substitution in an expression, as in this example:
#P = :val
Tokens that begin with the * : character are expression attribute values, which are * placeholders for the actual value at runtime.
For more * information on expression attribute names, see Specifying * Item Attributes in the Amazon DynamoDB Developer Guide.
*/ inline ScanRequest& AddExpressionAttributeNames(const Aws::String& key, const Aws::String& value) { m_expressionAttributeNamesHasBeenSet = true; m_expressionAttributeNames.emplace(key, value); return *this; } /** *One or more substitution tokens for attribute names in an expression. The
* following are some use cases for using
* ExpressionAttributeNames
:
To access an attribute * whose name conflicts with a DynamoDB reserved word.
To create * a placeholder for repeating occurrences of an attribute name in an * expression.
To prevent special characters in an attribute name * from being misinterpreted in an expression.
Use the # * character in an expression to dereference an attribute name. For example, * consider the following attribute name:
Percentile
*
The name of this attribute conflicts with a reserved word,
* so it cannot be used directly in an expression. (For the complete list of
* reserved words, see Reserved
* Words in the Amazon DynamoDB Developer Guide). To work around this,
* you could specify the following for ExpressionAttributeNames
:
{"#P":"Percentile"}
You could * then use this substitution in an expression, as in this example:
#P = :val
Tokens that begin with the * : character are expression attribute values, which are * placeholders for the actual value at runtime.
For more * information on expression attribute names, see Specifying * Item Attributes in the Amazon DynamoDB Developer Guide.
*/ inline ScanRequest& AddExpressionAttributeNames(Aws::String&& key, const Aws::String& value) { m_expressionAttributeNamesHasBeenSet = true; m_expressionAttributeNames.emplace(std::move(key), value); return *this; } /** *One or more substitution tokens for attribute names in an expression. The
* following are some use cases for using
* ExpressionAttributeNames
:
To access an attribute * whose name conflicts with a DynamoDB reserved word.
To create * a placeholder for repeating occurrences of an attribute name in an * expression.
To prevent special characters in an attribute name * from being misinterpreted in an expression.
Use the # * character in an expression to dereference an attribute name. For example, * consider the following attribute name:
Percentile
*
The name of this attribute conflicts with a reserved word,
* so it cannot be used directly in an expression. (For the complete list of
* reserved words, see Reserved
* Words in the Amazon DynamoDB Developer Guide). To work around this,
* you could specify the following for ExpressionAttributeNames
:
{"#P":"Percentile"}
You could * then use this substitution in an expression, as in this example:
#P = :val
Tokens that begin with the * : character are expression attribute values, which are * placeholders for the actual value at runtime.
For more * information on expression attribute names, see Specifying * Item Attributes in the Amazon DynamoDB Developer Guide.
*/ inline ScanRequest& AddExpressionAttributeNames(const Aws::String& key, Aws::String&& value) { m_expressionAttributeNamesHasBeenSet = true; m_expressionAttributeNames.emplace(key, std::move(value)); return *this; } /** *One or more substitution tokens for attribute names in an expression. The
* following are some use cases for using
* ExpressionAttributeNames
:
To access an attribute * whose name conflicts with a DynamoDB reserved word.
To create * a placeholder for repeating occurrences of an attribute name in an * expression.
To prevent special characters in an attribute name * from being misinterpreted in an expression.
Use the # * character in an expression to dereference an attribute name. For example, * consider the following attribute name:
Percentile
*
The name of this attribute conflicts with a reserved word,
* so it cannot be used directly in an expression. (For the complete list of
* reserved words, see Reserved
* Words in the Amazon DynamoDB Developer Guide). To work around this,
* you could specify the following for ExpressionAttributeNames
:
{"#P":"Percentile"}
You could * then use this substitution in an expression, as in this example:
#P = :val
Tokens that begin with the * : character are expression attribute values, which are * placeholders for the actual value at runtime.
For more * information on expression attribute names, see Specifying * Item Attributes in the Amazon DynamoDB Developer Guide.
*/ inline ScanRequest& AddExpressionAttributeNames(Aws::String&& key, Aws::String&& value) { m_expressionAttributeNamesHasBeenSet = true; m_expressionAttributeNames.emplace(std::move(key), std::move(value)); return *this; } /** *One or more substitution tokens for attribute names in an expression. The
* following are some use cases for using
* ExpressionAttributeNames
:
To access an attribute * whose name conflicts with a DynamoDB reserved word.
To create * a placeholder for repeating occurrences of an attribute name in an * expression.
To prevent special characters in an attribute name * from being misinterpreted in an expression.
Use the # * character in an expression to dereference an attribute name. For example, * consider the following attribute name:
Percentile
*
The name of this attribute conflicts with a reserved word,
* so it cannot be used directly in an expression. (For the complete list of
* reserved words, see Reserved
* Words in the Amazon DynamoDB Developer Guide). To work around this,
* you could specify the following for ExpressionAttributeNames
:
{"#P":"Percentile"}
You could * then use this substitution in an expression, as in this example:
#P = :val
Tokens that begin with the * : character are expression attribute values, which are * placeholders for the actual value at runtime.
For more * information on expression attribute names, see Specifying * Item Attributes in the Amazon DynamoDB Developer Guide.
*/ inline ScanRequest& AddExpressionAttributeNames(const char* key, Aws::String&& value) { m_expressionAttributeNamesHasBeenSet = true; m_expressionAttributeNames.emplace(key, std::move(value)); return *this; } /** *One or more substitution tokens for attribute names in an expression. The
* following are some use cases for using
* ExpressionAttributeNames
:
To access an attribute * whose name conflicts with a DynamoDB reserved word.
To create * a placeholder for repeating occurrences of an attribute name in an * expression.
To prevent special characters in an attribute name * from being misinterpreted in an expression.
Use the # * character in an expression to dereference an attribute name. For example, * consider the following attribute name:
Percentile
*
The name of this attribute conflicts with a reserved word,
* so it cannot be used directly in an expression. (For the complete list of
* reserved words, see Reserved
* Words in the Amazon DynamoDB Developer Guide). To work around this,
* you could specify the following for ExpressionAttributeNames
:
{"#P":"Percentile"}
You could * then use this substitution in an expression, as in this example:
#P = :val
Tokens that begin with the * : character are expression attribute values, which are * placeholders for the actual value at runtime.
For more * information on expression attribute names, see Specifying * Item Attributes in the Amazon DynamoDB Developer Guide.
*/ inline ScanRequest& AddExpressionAttributeNames(Aws::String&& key, const char* value) { m_expressionAttributeNamesHasBeenSet = true; m_expressionAttributeNames.emplace(std::move(key), value); return *this; } /** *One or more substitution tokens for attribute names in an expression. The
* following are some use cases for using
* ExpressionAttributeNames
:
To access an attribute * whose name conflicts with a DynamoDB reserved word.
To create * a placeholder for repeating occurrences of an attribute name in an * expression.
To prevent special characters in an attribute name * from being misinterpreted in an expression.
Use the # * character in an expression to dereference an attribute name. For example, * consider the following attribute name:
Percentile
*
The name of this attribute conflicts with a reserved word,
* so it cannot be used directly in an expression. (For the complete list of
* reserved words, see Reserved
* Words in the Amazon DynamoDB Developer Guide). To work around this,
* you could specify the following for ExpressionAttributeNames
:
{"#P":"Percentile"}
You could * then use this substitution in an expression, as in this example:
#P = :val
Tokens that begin with the * : character are expression attribute values, which are * placeholders for the actual value at runtime.
For more * information on expression attribute names, see Specifying * Item Attributes in the Amazon DynamoDB Developer Guide.
*/ inline ScanRequest& AddExpressionAttributeNames(const char* key, const char* value) { m_expressionAttributeNamesHasBeenSet = true; m_expressionAttributeNames.emplace(key, value); return *this; } /** *One or more values that can be substituted in an expression.
Use the
* : (colon) character in an expression to dereference an attribute value.
* For example, suppose that you wanted to check whether the value of the
* ProductStatus
attribute was one of the following:
* Available | Backordered | Discontinued
You would first need
* to specify ExpressionAttributeValues
as follows:
{
* ":avail":{"S":"Available"}, ":back":{"S":"Backordered"},
* ":disc":{"S":"Discontinued"} }
You could then use these values in * an expression, such as this:
ProductStatus IN (:avail, :back,
* :disc)
For more information on expression attribute values, see * Condition * Expressions in the Amazon DynamoDB Developer Guide.
*/ inline const Aws::MapOne or more values that can be substituted in an expression.
Use the
* : (colon) character in an expression to dereference an attribute value.
* For example, suppose that you wanted to check whether the value of the
* ProductStatus
attribute was one of the following:
* Available | Backordered | Discontinued
You would first need
* to specify ExpressionAttributeValues
as follows:
{
* ":avail":{"S":"Available"}, ":back":{"S":"Backordered"},
* ":disc":{"S":"Discontinued"} }
You could then use these values in * an expression, such as this:
ProductStatus IN (:avail, :back,
* :disc)
For more information on expression attribute values, see * Condition * Expressions in the Amazon DynamoDB Developer Guide.
*/ inline bool ExpressionAttributeValuesHasBeenSet() const { return m_expressionAttributeValuesHasBeenSet; } /** *One or more values that can be substituted in an expression.
Use the
* : (colon) character in an expression to dereference an attribute value.
* For example, suppose that you wanted to check whether the value of the
* ProductStatus
attribute was one of the following:
* Available | Backordered | Discontinued
You would first need
* to specify ExpressionAttributeValues
as follows:
{
* ":avail":{"S":"Available"}, ":back":{"S":"Backordered"},
* ":disc":{"S":"Discontinued"} }
You could then use these values in * an expression, such as this:
ProductStatus IN (:avail, :back,
* :disc)
For more information on expression attribute values, see * Condition * Expressions in the Amazon DynamoDB Developer Guide.
*/ inline void SetExpressionAttributeValues(const Aws::MapOne or more values that can be substituted in an expression.
Use the
* : (colon) character in an expression to dereference an attribute value.
* For example, suppose that you wanted to check whether the value of the
* ProductStatus
attribute was one of the following:
* Available | Backordered | Discontinued
You would first need
* to specify ExpressionAttributeValues
as follows:
{
* ":avail":{"S":"Available"}, ":back":{"S":"Backordered"},
* ":disc":{"S":"Discontinued"} }
You could then use these values in * an expression, such as this:
ProductStatus IN (:avail, :back,
* :disc)
For more information on expression attribute values, see * Condition * Expressions in the Amazon DynamoDB Developer Guide.
*/ inline void SetExpressionAttributeValues(Aws::MapOne or more values that can be substituted in an expression.
Use the
* : (colon) character in an expression to dereference an attribute value.
* For example, suppose that you wanted to check whether the value of the
* ProductStatus
attribute was one of the following:
* Available | Backordered | Discontinued
You would first need
* to specify ExpressionAttributeValues
as follows:
{
* ":avail":{"S":"Available"}, ":back":{"S":"Backordered"},
* ":disc":{"S":"Discontinued"} }
You could then use these values in * an expression, such as this:
ProductStatus IN (:avail, :back,
* :disc)
For more information on expression attribute values, see * Condition * Expressions in the Amazon DynamoDB Developer Guide.
*/ inline ScanRequest& WithExpressionAttributeValues(const Aws::MapOne or more values that can be substituted in an expression.
Use the
* : (colon) character in an expression to dereference an attribute value.
* For example, suppose that you wanted to check whether the value of the
* ProductStatus
attribute was one of the following:
* Available | Backordered | Discontinued
You would first need
* to specify ExpressionAttributeValues
as follows:
{
* ":avail":{"S":"Available"}, ":back":{"S":"Backordered"},
* ":disc":{"S":"Discontinued"} }
You could then use these values in * an expression, such as this:
ProductStatus IN (:avail, :back,
* :disc)
For more information on expression attribute values, see * Condition * Expressions in the Amazon DynamoDB Developer Guide.
*/ inline ScanRequest& WithExpressionAttributeValues(Aws::MapOne or more values that can be substituted in an expression.
Use the
* : (colon) character in an expression to dereference an attribute value.
* For example, suppose that you wanted to check whether the value of the
* ProductStatus
attribute was one of the following:
* Available | Backordered | Discontinued
You would first need
* to specify ExpressionAttributeValues
as follows:
{
* ":avail":{"S":"Available"}, ":back":{"S":"Backordered"},
* ":disc":{"S":"Discontinued"} }
You could then use these values in * an expression, such as this:
ProductStatus IN (:avail, :back,
* :disc)
For more information on expression attribute values, see * Condition * Expressions in the Amazon DynamoDB Developer Guide.
*/ inline ScanRequest& AddExpressionAttributeValues(const Aws::String& key, const AttributeValue& value) { m_expressionAttributeValuesHasBeenSet = true; m_expressionAttributeValues.emplace(key, value); return *this; } /** *One or more values that can be substituted in an expression.
Use the
* : (colon) character in an expression to dereference an attribute value.
* For example, suppose that you wanted to check whether the value of the
* ProductStatus
attribute was one of the following:
* Available | Backordered | Discontinued
You would first need
* to specify ExpressionAttributeValues
as follows:
{
* ":avail":{"S":"Available"}, ":back":{"S":"Backordered"},
* ":disc":{"S":"Discontinued"} }
You could then use these values in * an expression, such as this:
ProductStatus IN (:avail, :back,
* :disc)
For more information on expression attribute values, see * Condition * Expressions in the Amazon DynamoDB Developer Guide.
*/ inline ScanRequest& AddExpressionAttributeValues(Aws::String&& key, const AttributeValue& value) { m_expressionAttributeValuesHasBeenSet = true; m_expressionAttributeValues.emplace(std::move(key), value); return *this; } /** *One or more values that can be substituted in an expression.
Use the
* : (colon) character in an expression to dereference an attribute value.
* For example, suppose that you wanted to check whether the value of the
* ProductStatus
attribute was one of the following:
* Available | Backordered | Discontinued
You would first need
* to specify ExpressionAttributeValues
as follows:
{
* ":avail":{"S":"Available"}, ":back":{"S":"Backordered"},
* ":disc":{"S":"Discontinued"} }
You could then use these values in * an expression, such as this:
ProductStatus IN (:avail, :back,
* :disc)
For more information on expression attribute values, see * Condition * Expressions in the Amazon DynamoDB Developer Guide.
*/ inline ScanRequest& AddExpressionAttributeValues(const Aws::String& key, AttributeValue&& value) { m_expressionAttributeValuesHasBeenSet = true; m_expressionAttributeValues.emplace(key, std::move(value)); return *this; } /** *One or more values that can be substituted in an expression.
Use the
* : (colon) character in an expression to dereference an attribute value.
* For example, suppose that you wanted to check whether the value of the
* ProductStatus
attribute was one of the following:
* Available | Backordered | Discontinued
You would first need
* to specify ExpressionAttributeValues
as follows:
{
* ":avail":{"S":"Available"}, ":back":{"S":"Backordered"},
* ":disc":{"S":"Discontinued"} }
You could then use these values in * an expression, such as this:
ProductStatus IN (:avail, :back,
* :disc)
For more information on expression attribute values, see * Condition * Expressions in the Amazon DynamoDB Developer Guide.
*/ inline ScanRequest& AddExpressionAttributeValues(Aws::String&& key, AttributeValue&& value) { m_expressionAttributeValuesHasBeenSet = true; m_expressionAttributeValues.emplace(std::move(key), std::move(value)); return *this; } /** *One or more values that can be substituted in an expression.
Use the
* : (colon) character in an expression to dereference an attribute value.
* For example, suppose that you wanted to check whether the value of the
* ProductStatus
attribute was one of the following:
* Available | Backordered | Discontinued
You would first need
* to specify ExpressionAttributeValues
as follows:
{
* ":avail":{"S":"Available"}, ":back":{"S":"Backordered"},
* ":disc":{"S":"Discontinued"} }
You could then use these values in * an expression, such as this:
ProductStatus IN (:avail, :back,
* :disc)
For more information on expression attribute values, see * Condition * Expressions in the Amazon DynamoDB Developer Guide.
*/ inline ScanRequest& AddExpressionAttributeValues(const char* key, AttributeValue&& value) { m_expressionAttributeValuesHasBeenSet = true; m_expressionAttributeValues.emplace(key, std::move(value)); return *this; } /** *One or more values that can be substituted in an expression.
Use the
* : (colon) character in an expression to dereference an attribute value.
* For example, suppose that you wanted to check whether the value of the
* ProductStatus
attribute was one of the following:
* Available | Backordered | Discontinued
You would first need
* to specify ExpressionAttributeValues
as follows:
{
* ":avail":{"S":"Available"}, ":back":{"S":"Backordered"},
* ":disc":{"S":"Discontinued"} }
You could then use these values in * an expression, such as this:
ProductStatus IN (:avail, :back,
* :disc)
For more information on expression attribute values, see * Condition * Expressions in the Amazon DynamoDB Developer Guide.
*/ inline ScanRequest& AddExpressionAttributeValues(const char* key, const AttributeValue& value) { m_expressionAttributeValuesHasBeenSet = true; m_expressionAttributeValues.emplace(key, value); return *this; } /** *A Boolean value that determines the read consistency model during the * scan:
If ConsistentRead
is false
,
* then the data returned from Scan
might not contain the results from
* other recently completed write operations (PutItem
,
* UpdateItem
, or DeleteItem
).
If
* ConsistentRead
is true
, then all of the write
* operations that completed before the Scan
began are guaranteed to
* be contained in the Scan
response.
The default
* setting for ConsistentRead
is false
.
The
* ConsistentRead
parameter is not supported on global secondary
* indexes. If you scan a global secondary index with ConsistentRead
* set to true, you will receive a ValidationException
.
A Boolean value that determines the read consistency model during the * scan:
If ConsistentRead
is false
,
* then the data returned from Scan
might not contain the results from
* other recently completed write operations (PutItem
,
* UpdateItem
, or DeleteItem
).
If
* ConsistentRead
is true
, then all of the write
* operations that completed before the Scan
began are guaranteed to
* be contained in the Scan
response.
The default
* setting for ConsistentRead
is false
.
The
* ConsistentRead
parameter is not supported on global secondary
* indexes. If you scan a global secondary index with ConsistentRead
* set to true, you will receive a ValidationException
.
A Boolean value that determines the read consistency model during the * scan:
If ConsistentRead
is false
,
* then the data returned from Scan
might not contain the results from
* other recently completed write operations (PutItem
,
* UpdateItem
, or DeleteItem
).
If
* ConsistentRead
is true
, then all of the write
* operations that completed before the Scan
began are guaranteed to
* be contained in the Scan
response.
The default
* setting for ConsistentRead
is false
.
The
* ConsistentRead
parameter is not supported on global secondary
* indexes. If you scan a global secondary index with ConsistentRead
* set to true, you will receive a ValidationException
.
A Boolean value that determines the read consistency model during the * scan:
If ConsistentRead
is false
,
* then the data returned from Scan
might not contain the results from
* other recently completed write operations (PutItem
,
* UpdateItem
, or DeleteItem
).
If
* ConsistentRead
is true
, then all of the write
* operations that completed before the Scan
began are guaranteed to
* be contained in the Scan
response.
The default
* setting for ConsistentRead
is false
.
The
* ConsistentRead
parameter is not supported on global secondary
* indexes. If you scan a global secondary index with ConsistentRead
* set to true, you will receive a ValidationException
.