AWS SDK for C++  1.8.60
AWS SDK for C++
Public Member Functions | List of all members
Aws::DynamoDB::Model::QueryRequest Class Reference

#include <QueryRequest.h>

+ Inheritance diagram for Aws::DynamoDB::Model::QueryRequest:

Public Member Functions

 QueryRequest ()
 
virtual const char * GetServiceRequestName () const override
 
Aws::String SerializePayload () const override
 
Aws::Http::HeaderValueCollection GetRequestSpecificHeaders () const override
 
const Aws::StringGetTableName () const
 
bool TableNameHasBeenSet () const
 
void SetTableName (const Aws::String &value)
 
void SetTableName (Aws::String &&value)
 
void SetTableName (const char *value)
 
QueryRequestWithTableName (const Aws::String &value)
 
QueryRequestWithTableName (Aws::String &&value)
 
QueryRequestWithTableName (const char *value)
 
const Aws::StringGetIndexName () const
 
bool IndexNameHasBeenSet () const
 
void SetIndexName (const Aws::String &value)
 
void SetIndexName (Aws::String &&value)
 
void SetIndexName (const char *value)
 
QueryRequestWithIndexName (const Aws::String &value)
 
QueryRequestWithIndexName (Aws::String &&value)
 
QueryRequestWithIndexName (const char *value)
 
const SelectGetSelect () const
 
bool SelectHasBeenSet () const
 
void SetSelect (const Select &value)
 
void SetSelect (Select &&value)
 
QueryRequestWithSelect (const Select &value)
 
QueryRequestWithSelect (Select &&value)
 
const Aws::Vector< Aws::String > & GetAttributesToGet () const
 
bool AttributesToGetHasBeenSet () const
 
void SetAttributesToGet (const Aws::Vector< Aws::String > &value)
 
void SetAttributesToGet (Aws::Vector< Aws::String > &&value)
 
QueryRequestWithAttributesToGet (const Aws::Vector< Aws::String > &value)
 
QueryRequestWithAttributesToGet (Aws::Vector< Aws::String > &&value)
 
QueryRequestAddAttributesToGet (const Aws::String &value)
 
QueryRequestAddAttributesToGet (Aws::String &&value)
 
QueryRequestAddAttributesToGet (const char *value)
 
int GetLimit () const
 
bool LimitHasBeenSet () const
 
void SetLimit (int value)
 
QueryRequestWithLimit (int value)
 
bool GetConsistentRead () const
 
bool ConsistentReadHasBeenSet () const
 
void SetConsistentRead (bool value)
 
QueryRequestWithConsistentRead (bool value)
 
const Aws::Map< Aws::String, Condition > & GetKeyConditions () const
 
bool KeyConditionsHasBeenSet () const
 
void SetKeyConditions (const Aws::Map< Aws::String, Condition > &value)
 
void SetKeyConditions (Aws::Map< Aws::String, Condition > &&value)
 
QueryRequestWithKeyConditions (const Aws::Map< Aws::String, Condition > &value)
 
QueryRequestWithKeyConditions (Aws::Map< Aws::String, Condition > &&value)
 
QueryRequestAddKeyConditions (const Aws::String &key, const Condition &value)
 
QueryRequestAddKeyConditions (Aws::String &&key, const Condition &value)
 
QueryRequestAddKeyConditions (const Aws::String &key, Condition &&value)
 
QueryRequestAddKeyConditions (Aws::String &&key, Condition &&value)
 
QueryRequestAddKeyConditions (const char *key, Condition &&value)
 
QueryRequestAddKeyConditions (const char *key, const Condition &value)
 
const Aws::Map< Aws::String, Condition > & GetQueryFilter () const
 
bool QueryFilterHasBeenSet () const
 
void SetQueryFilter (const Aws::Map< Aws::String, Condition > &value)
 
void SetQueryFilter (Aws::Map< Aws::String, Condition > &&value)
 
QueryRequestWithQueryFilter (const Aws::Map< Aws::String, Condition > &value)
 
QueryRequestWithQueryFilter (Aws::Map< Aws::String, Condition > &&value)
 
QueryRequestAddQueryFilter (const Aws::String &key, const Condition &value)
 
QueryRequestAddQueryFilter (Aws::String &&key, const Condition &value)
 
QueryRequestAddQueryFilter (const Aws::String &key, Condition &&value)
 
QueryRequestAddQueryFilter (Aws::String &&key, Condition &&value)
 
QueryRequestAddQueryFilter (const char *key, Condition &&value)
 
QueryRequestAddQueryFilter (const char *key, const Condition &value)
 
const ConditionalOperatorGetConditionalOperator () const
 
bool ConditionalOperatorHasBeenSet () const
 
void SetConditionalOperator (const ConditionalOperator &value)
 
void SetConditionalOperator (ConditionalOperator &&value)
 
QueryRequestWithConditionalOperator (const ConditionalOperator &value)
 
QueryRequestWithConditionalOperator (ConditionalOperator &&value)
 
bool GetScanIndexForward () const
 
bool ScanIndexForwardHasBeenSet () const
 
void SetScanIndexForward (bool value)
 
QueryRequestWithScanIndexForward (bool value)
 
const Aws::Map< Aws::String, AttributeValue > & GetExclusiveStartKey () const
 
bool ExclusiveStartKeyHasBeenSet () const
 
void SetExclusiveStartKey (const Aws::Map< Aws::String, AttributeValue > &value)
 
void SetExclusiveStartKey (Aws::Map< Aws::String, AttributeValue > &&value)
 
QueryRequestWithExclusiveStartKey (const Aws::Map< Aws::String, AttributeValue > &value)
 
QueryRequestWithExclusiveStartKey (Aws::Map< Aws::String, AttributeValue > &&value)
 
QueryRequestAddExclusiveStartKey (const Aws::String &key, const AttributeValue &value)
 
QueryRequestAddExclusiveStartKey (Aws::String &&key, const AttributeValue &value)
 
QueryRequestAddExclusiveStartKey (const Aws::String &key, AttributeValue &&value)
 
QueryRequestAddExclusiveStartKey (Aws::String &&key, AttributeValue &&value)
 
QueryRequestAddExclusiveStartKey (const char *key, AttributeValue &&value)
 
QueryRequestAddExclusiveStartKey (const char *key, const AttributeValue &value)
 
const ReturnConsumedCapacityGetReturnConsumedCapacity () const
 
bool ReturnConsumedCapacityHasBeenSet () const
 
void SetReturnConsumedCapacity (const ReturnConsumedCapacity &value)
 
void SetReturnConsumedCapacity (ReturnConsumedCapacity &&value)
 
QueryRequestWithReturnConsumedCapacity (const ReturnConsumedCapacity &value)
 
QueryRequestWithReturnConsumedCapacity (ReturnConsumedCapacity &&value)
 
const Aws::StringGetProjectionExpression () const
 
bool ProjectionExpressionHasBeenSet () const
 
void SetProjectionExpression (const Aws::String &value)
 
void SetProjectionExpression (Aws::String &&value)
 
void SetProjectionExpression (const char *value)
 
QueryRequestWithProjectionExpression (const Aws::String &value)
 
QueryRequestWithProjectionExpression (Aws::String &&value)
 
QueryRequestWithProjectionExpression (const char *value)
 
const Aws::StringGetFilterExpression () const
 
bool FilterExpressionHasBeenSet () const
 
void SetFilterExpression (const Aws::String &value)
 
void SetFilterExpression (Aws::String &&value)
 
void SetFilterExpression (const char *value)
 
QueryRequestWithFilterExpression (const Aws::String &value)
 
QueryRequestWithFilterExpression (Aws::String &&value)
 
QueryRequestWithFilterExpression (const char *value)
 
const Aws::StringGetKeyConditionExpression () const
 
bool KeyConditionExpressionHasBeenSet () const
 
void SetKeyConditionExpression (const Aws::String &value)
 
void SetKeyConditionExpression (Aws::String &&value)
 
void SetKeyConditionExpression (const char *value)
 
QueryRequestWithKeyConditionExpression (const Aws::String &value)
 
QueryRequestWithKeyConditionExpression (Aws::String &&value)
 
QueryRequestWithKeyConditionExpression (const char *value)
 
const Aws::Map< Aws::String, Aws::String > & GetExpressionAttributeNames () const
 
bool ExpressionAttributeNamesHasBeenSet () const
 
void SetExpressionAttributeNames (const Aws::Map< Aws::String, Aws::String > &value)
 
void SetExpressionAttributeNames (Aws::Map< Aws::String, Aws::String > &&value)
 
QueryRequestWithExpressionAttributeNames (const Aws::Map< Aws::String, Aws::String > &value)
 
QueryRequestWithExpressionAttributeNames (Aws::Map< Aws::String, Aws::String > &&value)
 
QueryRequestAddExpressionAttributeNames (const Aws::String &key, const Aws::String &value)
 
QueryRequestAddExpressionAttributeNames (Aws::String &&key, const Aws::String &value)
 
QueryRequestAddExpressionAttributeNames (const Aws::String &key, Aws::String &&value)
 
QueryRequestAddExpressionAttributeNames (Aws::String &&key, Aws::String &&value)
 
QueryRequestAddExpressionAttributeNames (const char *key, Aws::String &&value)
 
QueryRequestAddExpressionAttributeNames (Aws::String &&key, const char *value)
 
QueryRequestAddExpressionAttributeNames (const char *key, const char *value)
 
const Aws::Map< Aws::String, AttributeValue > & GetExpressionAttributeValues () const
 
bool ExpressionAttributeValuesHasBeenSet () const
 
void SetExpressionAttributeValues (const Aws::Map< Aws::String, AttributeValue > &value)
 
void SetExpressionAttributeValues (Aws::Map< Aws::String, AttributeValue > &&value)
 
QueryRequestWithExpressionAttributeValues (const Aws::Map< Aws::String, AttributeValue > &value)
 
QueryRequestWithExpressionAttributeValues (Aws::Map< Aws::String, AttributeValue > &&value)
 
QueryRequestAddExpressionAttributeValues (const Aws::String &key, const AttributeValue &value)
 
QueryRequestAddExpressionAttributeValues (Aws::String &&key, const AttributeValue &value)
 
QueryRequestAddExpressionAttributeValues (const Aws::String &key, AttributeValue &&value)
 
QueryRequestAddExpressionAttributeValues (Aws::String &&key, AttributeValue &&value)
 
QueryRequestAddExpressionAttributeValues (const char *key, AttributeValue &&value)
 
QueryRequestAddExpressionAttributeValues (const char *key, const AttributeValue &value)
 
- Public Member Functions inherited from Aws::DynamoDB::DynamoDBRequest
virtual ~DynamoDBRequest ()
 
void AddParametersToRequest (Aws::Http::HttpRequest &httpRequest) const
 
Aws::Http::HeaderValueCollection GetHeaders () const override
 
- Public Member Functions inherited from Aws::AmazonSerializableWebServiceRequest
 AmazonSerializableWebServiceRequest ()
 
virtual ~AmazonSerializableWebServiceRequest ()
 
std::shared_ptr< Aws::IOStreamGetBody () const override
 
- Public Member Functions inherited from Aws::AmazonWebServiceRequest
 AmazonWebServiceRequest ()
 
virtual ~AmazonWebServiceRequest ()=default
 
virtual void AddQueryStringParameters (Aws::Http::URI &uri) const
 
virtual void PutToPresignedUrl (Aws::Http::URI &uri) const
 
virtual bool IsStreaming () const
 
virtual bool IsEventStreamRequest () const
 
virtual bool SignBody () const
 
virtual bool IsChunked () const
 
virtual void SetRequestSignedHandler (const RequestSignedHandler &handler)
 
virtual const RequestSignedHandlerGetRequestSignedHandler () const
 
const Aws::IOStreamFactoryGetResponseStreamFactory () const
 
void SetResponseStreamFactory (const Aws::IOStreamFactory &factory)
 
virtual void SetDataReceivedEventHandler (const Aws::Http::DataReceivedEventHandler &dataReceivedEventHandler)
 
virtual void SetDataSentEventHandler (const Aws::Http::DataSentEventHandler &dataSentEventHandler)
 
virtual void SetContinueRequestHandler (const Aws::Http::ContinueRequestHandler &continueRequestHandler)
 
virtual void SetDataReceivedEventHandler (Aws::Http::DataReceivedEventHandler &&dataReceivedEventHandler)
 
virtual void SetDataSentEventHandler (Aws::Http::DataSentEventHandler &&dataSentEventHandler)
 
virtual void SetContinueRequestHandler (Aws::Http::ContinueRequestHandler &&continueRequestHandler)
 
virtual void SetRequestRetryHandler (const RequestRetryHandler &handler)
 
virtual void SetRequestRetryHandler (RequestRetryHandler &&handler)
 
virtual const Aws::Http::DataReceivedEventHandlerGetDataReceivedEventHandler () const
 
virtual const Aws::Http::DataSentEventHandlerGetDataSentEventHandler () const
 
virtual const Aws::Http::ContinueRequestHandlerGetContinueRequestHandler () const
 
virtual const RequestRetryHandlerGetRequestRetryHandler () const
 
virtual bool ShouldComputeContentMd5 () const
 

Additional Inherited Members

- Protected Member Functions inherited from Aws::AmazonWebServiceRequest
virtual void DumpBodyToUrl (Aws::Http::URI &uri) const
 

Detailed Description

Represents the input of a Query operation.

See Also:

AWS API Reference

Definition at line 32 of file QueryRequest.h.

Constructor & Destructor Documentation

◆ QueryRequest()

Aws::DynamoDB::Model::QueryRequest::QueryRequest ( )

Member Function Documentation

◆ AddAttributesToGet() [1/3]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::AddAttributesToGet ( const Aws::String value)
inline

This is a legacy parameter. Use ProjectionExpression instead. For more information, see AttributesToGet in the Amazon DynamoDB Developer Guide.

Definition at line 443 of file QueryRequest.h.

◆ AddAttributesToGet() [2/3]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::AddAttributesToGet ( Aws::String &&  value)
inline

This is a legacy parameter. Use ProjectionExpression instead. For more information, see AttributesToGet in the Amazon DynamoDB Developer Guide.

Definition at line 451 of file QueryRequest.h.

◆ AddAttributesToGet() [3/3]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::AddAttributesToGet ( const char *  value)
inline

This is a legacy parameter. Use ProjectionExpression instead. For more information, see AttributesToGet in the Amazon DynamoDB Developer Guide.

Definition at line 459 of file QueryRequest.h.

◆ AddExclusiveStartKey() [1/6]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::AddExclusiveStartKey ( const Aws::String key,
const AttributeValue value 
)
inline

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.

Definition at line 926 of file QueryRequest.h.

◆ AddExclusiveStartKey() [2/6]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::AddExclusiveStartKey ( Aws::String &&  key,
const AttributeValue value 
)
inline

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.

Definition at line 934 of file QueryRequest.h.

◆ AddExclusiveStartKey() [3/6]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::AddExclusiveStartKey ( const Aws::String key,
AttributeValue &&  value 
)
inline

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.

Definition at line 942 of file QueryRequest.h.

◆ AddExclusiveStartKey() [4/6]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::AddExclusiveStartKey ( Aws::String &&  key,
AttributeValue &&  value 
)
inline

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.

Definition at line 950 of file QueryRequest.h.

◆ AddExclusiveStartKey() [5/6]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::AddExclusiveStartKey ( const char *  key,
AttributeValue &&  value 
)
inline

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.

Definition at line 958 of file QueryRequest.h.

◆ AddExclusiveStartKey() [6/6]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::AddExclusiveStartKey ( const char *  key,
const AttributeValue value 
)
inline

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.

Definition at line 966 of file QueryRequest.h.

◆ AddExpressionAttributeNames() [1/7]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::AddExpressionAttributeNames ( const Aws::String key,
const Aws::String value 
)
inline

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.

Definition at line 1850 of file QueryRequest.h.

◆ AddExpressionAttributeNames() [2/7]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::AddExpressionAttributeNames ( Aws::String &&  key,
const Aws::String value 
)
inline

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.

Definition at line 1877 of file QueryRequest.h.

◆ AddExpressionAttributeNames() [3/7]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::AddExpressionAttributeNames ( const Aws::String key,
Aws::String &&  value 
)
inline

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.

Definition at line 1904 of file QueryRequest.h.

◆ AddExpressionAttributeNames() [4/7]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::AddExpressionAttributeNames ( Aws::String &&  key,
Aws::String &&  value 
)
inline

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.

Definition at line 1931 of file QueryRequest.h.

◆ AddExpressionAttributeNames() [5/7]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::AddExpressionAttributeNames ( const char *  key,
Aws::String &&  value 
)
inline

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.

Definition at line 1958 of file QueryRequest.h.

◆ AddExpressionAttributeNames() [6/7]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::AddExpressionAttributeNames ( Aws::String &&  key,
const char *  value 
)
inline

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.

Definition at line 1985 of file QueryRequest.h.

◆ AddExpressionAttributeNames() [7/7]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::AddExpressionAttributeNames ( const char *  key,
const char *  value 
)
inline

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.

Definition at line 2012 of file QueryRequest.h.

◆ AddExpressionAttributeValues() [1/6]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::AddExpressionAttributeValues ( const Aws::String key,
const AttributeValue value 
)
inline

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 Specifying Conditions in the Amazon DynamoDB Developer Guide.

Definition at line 2132 of file QueryRequest.h.

◆ AddExpressionAttributeValues() [2/6]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::AddExpressionAttributeValues ( Aws::String &&  key,
const AttributeValue value 
)
inline

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 Specifying Conditions in the Amazon DynamoDB Developer Guide.

Definition at line 2149 of file QueryRequest.h.

◆ AddExpressionAttributeValues() [3/6]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::AddExpressionAttributeValues ( const Aws::String key,
AttributeValue &&  value 
)
inline

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 Specifying Conditions in the Amazon DynamoDB Developer Guide.

Definition at line 2166 of file QueryRequest.h.

◆ AddExpressionAttributeValues() [4/6]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::AddExpressionAttributeValues ( Aws::String &&  key,
AttributeValue &&  value 
)
inline

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 Specifying Conditions in the Amazon DynamoDB Developer Guide.

Definition at line 2183 of file QueryRequest.h.

◆ AddExpressionAttributeValues() [5/6]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::AddExpressionAttributeValues ( const char *  key,
AttributeValue &&  value 
)
inline

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 Specifying Conditions in the Amazon DynamoDB Developer Guide.

Definition at line 2200 of file QueryRequest.h.

◆ AddExpressionAttributeValues() [6/6]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::AddExpressionAttributeValues ( const char *  key,
const AttributeValue value 
)
inline

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 Specifying Conditions in the Amazon DynamoDB Developer Guide.

Definition at line 2217 of file QueryRequest.h.

◆ AddKeyConditions() [1/6]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::AddKeyConditions ( const Aws::String key,
const Condition value 
)
inline

This is a legacy parameter. Use KeyConditionExpression instead. For more information, see KeyConditions in the Amazon DynamoDB Developer Guide.

Definition at line 618 of file QueryRequest.h.

◆ AddKeyConditions() [2/6]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::AddKeyConditions ( Aws::String &&  key,
const Condition value 
)
inline

This is a legacy parameter. Use KeyConditionExpression instead. For more information, see KeyConditions in the Amazon DynamoDB Developer Guide.

Definition at line 626 of file QueryRequest.h.

◆ AddKeyConditions() [3/6]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::AddKeyConditions ( const Aws::String key,
Condition &&  value 
)
inline

This is a legacy parameter. Use KeyConditionExpression instead. For more information, see KeyConditions in the Amazon DynamoDB Developer Guide.

Definition at line 634 of file QueryRequest.h.

◆ AddKeyConditions() [4/6]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::AddKeyConditions ( Aws::String &&  key,
Condition &&  value 
)
inline

This is a legacy parameter. Use KeyConditionExpression instead. For more information, see KeyConditions in the Amazon DynamoDB Developer Guide.

Definition at line 642 of file QueryRequest.h.

◆ AddKeyConditions() [5/6]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::AddKeyConditions ( const char *  key,
Condition &&  value 
)
inline

This is a legacy parameter. Use KeyConditionExpression instead. For more information, see KeyConditions in the Amazon DynamoDB Developer Guide.

Definition at line 650 of file QueryRequest.h.

◆ AddKeyConditions() [6/6]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::AddKeyConditions ( const char *  key,
const Condition value 
)
inline

This is a legacy parameter. Use KeyConditionExpression instead. For more information, see KeyConditions in the Amazon DynamoDB Developer Guide.

Definition at line 658 of file QueryRequest.h.

◆ AddQueryFilter() [1/6]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::AddQueryFilter ( const Aws::String key,
const Condition value 
)
inline

This is a legacy parameter. Use FilterExpression instead. For more information, see QueryFilter in the Amazon DynamoDB Developer Guide.

Definition at line 715 of file QueryRequest.h.

◆ AddQueryFilter() [2/6]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::AddQueryFilter ( Aws::String &&  key,
const Condition value 
)
inline

This is a legacy parameter. Use FilterExpression instead. For more information, see QueryFilter in the Amazon DynamoDB Developer Guide.

Definition at line 723 of file QueryRequest.h.

◆ AddQueryFilter() [3/6]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::AddQueryFilter ( const Aws::String key,
Condition &&  value 
)
inline

This is a legacy parameter. Use FilterExpression instead. For more information, see QueryFilter in the Amazon DynamoDB Developer Guide.

Definition at line 731 of file QueryRequest.h.

◆ AddQueryFilter() [4/6]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::AddQueryFilter ( Aws::String &&  key,
Condition &&  value 
)
inline

This is a legacy parameter. Use FilterExpression instead. For more information, see QueryFilter in the Amazon DynamoDB Developer Guide.

Definition at line 739 of file QueryRequest.h.

◆ AddQueryFilter() [5/6]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::AddQueryFilter ( const char *  key,
Condition &&  value 
)
inline

This is a legacy parameter. Use FilterExpression instead. For more information, see QueryFilter in the Amazon DynamoDB Developer Guide.

Definition at line 747 of file QueryRequest.h.

◆ AddQueryFilter() [6/6]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::AddQueryFilter ( const char *  key,
const Condition value 
)
inline

This is a legacy parameter. Use FilterExpression instead. For more information, see QueryFilter in the Amazon DynamoDB Developer Guide.

Definition at line 755 of file QueryRequest.h.

◆ AttributesToGetHasBeenSet()

bool Aws::DynamoDB::Model::QueryRequest::AttributesToGetHasBeenSet ( ) const
inline

This is a legacy parameter. Use ProjectionExpression instead. For more information, see AttributesToGet in the Amazon DynamoDB Developer Guide.

Definition at line 403 of file QueryRequest.h.

◆ ConditionalOperatorHasBeenSet()

bool Aws::DynamoDB::Model::QueryRequest::ConditionalOperatorHasBeenSet ( ) const
inline

This is a legacy parameter. Use FilterExpression instead. For more information, see ConditionalOperator in the Amazon DynamoDB Developer Guide.

Definition at line 772 of file QueryRequest.h.

◆ ConsistentReadHasBeenSet()

bool Aws::DynamoDB::Model::QueryRequest::ConsistentReadHasBeenSet ( ) const
inline

Determines the read consistency model: If set to true, then the operation uses strongly consistent reads; otherwise, the operation uses eventually consistent reads.

Strongly consistent reads are not supported on global secondary indexes. If you query a global secondary index with ConsistentRead set to true, you will receive a ValidationException.

Definition at line 541 of file QueryRequest.h.

◆ ExclusiveStartKeyHasBeenSet()

bool Aws::DynamoDB::Model::QueryRequest::ExclusiveStartKeyHasBeenSet ( ) const
inline

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.

Definition at line 886 of file QueryRequest.h.

◆ ExpressionAttributeNamesHasBeenSet()

bool Aws::DynamoDB::Model::QueryRequest::ExpressionAttributeNamesHasBeenSet ( ) const
inline

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.

Definition at line 1715 of file QueryRequest.h.

◆ ExpressionAttributeValuesHasBeenSet()

bool Aws::DynamoDB::Model::QueryRequest::ExpressionAttributeValuesHasBeenSet ( ) const
inline

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 Specifying Conditions in the Amazon DynamoDB Developer Guide.

Definition at line 2047 of file QueryRequest.h.

◆ FilterExpressionHasBeenSet()

bool Aws::DynamoDB::Model::QueryRequest::FilterExpressionHasBeenSet ( ) const
inline

A string that contains conditions that DynamoDB applies after the Query operation, but before the data is returned to you. Items that do not satisfy the FilterExpression criteria are not returned.

A FilterExpression does not allow key attributes. You cannot define a filter expression based on a partition key or a sort key.

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.

Definition at line 1111 of file QueryRequest.h.

◆ GetAttributesToGet()

const Aws::Vector<Aws::String>& Aws::DynamoDB::Model::QueryRequest::GetAttributesToGet ( ) const
inline

This is a legacy parameter. Use ProjectionExpression instead. For more information, see AttributesToGet in the Amazon DynamoDB Developer Guide.

Definition at line 395 of file QueryRequest.h.

◆ GetConditionalOperator()

const ConditionalOperator& Aws::DynamoDB::Model::QueryRequest::GetConditionalOperator ( ) const
inline

This is a legacy parameter. Use FilterExpression instead. For more information, see ConditionalOperator in the Amazon DynamoDB Developer Guide.

Definition at line 764 of file QueryRequest.h.

◆ GetConsistentRead()

bool Aws::DynamoDB::Model::QueryRequest::GetConsistentRead ( ) const
inline

Determines the read consistency model: If set to true, then the operation uses strongly consistent reads; otherwise, the operation uses eventually consistent reads.

Strongly consistent reads are not supported on global secondary indexes. If you query a global secondary index with ConsistentRead set to true, you will receive a ValidationException.

Definition at line 531 of file QueryRequest.h.

◆ GetExclusiveStartKey()

const Aws::Map<Aws::String, AttributeValue>& Aws::DynamoDB::Model::QueryRequest::GetExclusiveStartKey ( ) const
inline

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.

Definition at line 878 of file QueryRequest.h.

◆ GetExpressionAttributeNames()

const Aws::Map<Aws::String, Aws::String>& Aws::DynamoDB::Model::QueryRequest::GetExpressionAttributeNames ( ) const
inline

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.

Definition at line 1688 of file QueryRequest.h.

◆ GetExpressionAttributeValues()

const Aws::Map<Aws::String, AttributeValue>& Aws::DynamoDB::Model::QueryRequest::GetExpressionAttributeValues ( ) const
inline

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 Specifying Conditions in the Amazon DynamoDB Developer Guide.

Definition at line 2030 of file QueryRequest.h.

◆ GetFilterExpression()

const Aws::String& Aws::DynamoDB::Model::QueryRequest::GetFilterExpression ( ) const
inline

A string that contains conditions that DynamoDB applies after the Query operation, but before the data is returned to you. Items that do not satisfy the FilterExpression criteria are not returned.

A FilterExpression does not allow key attributes. You cannot define a filter expression based on a partition key or a sort key.

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.

Definition at line 1097 of file QueryRequest.h.

◆ GetIndexName()

const Aws::String& Aws::DynamoDB::Model::QueryRequest::GetIndexName ( ) const
inline

The name of an index to query. This index can be any local secondary index or global secondary index on the table. Note that if you use the IndexName parameter, you must also provide TableName.

Definition at line 95 of file QueryRequest.h.

◆ GetKeyConditionExpression()

const Aws::String& Aws::DynamoDB::Model::QueryRequest::GetKeyConditionExpression ( ) const
inline

The condition that specifies the key values for items to be retrieved by the Query action.

The condition must perform an equality test on a single partition key value.

The condition can optionally perform one of several comparison tests on a single sort key value. This allows Query to retrieve one item with a given partition key value and sort key value, or several items that have the same partition key value but different sort key values.

The partition key equality test is required, and must be specified in the following format:

partitionKeyName = :partitionkeyval

If you also want to provide a condition for the sort key, it must be combined using AND with the condition for the sort key. Following is an example, using the = comparison operator for the sort key:

partitionKeyName = :partitionkeyval AND sortKeyName = :sortkeyval

Valid comparisons for the sort key condition are as follows:

  • sortKeyName = :sortkeyval - true if the sort key value is equal to :sortkeyval.

  • sortKeyName < :sortkeyval - true if the sort key value is less than :sortkeyval.

  • sortKeyName <= :sortkeyval - true if the sort key value is less than or equal to :sortkeyval.

  • sortKeyName > :sortkeyval - true if the sort key value is greater than :sortkeyval.

  • sortKeyName >= :sortkeyval - true if the sort key value is greater than or equal to :sortkeyval.

  • sortKeyName BETWEEN :sortkeyval1 AND :sortkeyval2 - true if the sort key value is greater than or equal to :sortkeyval1, and less than or equal to :sortkeyval2.

  • begins_with ( sortKeyName, :sortkeyval ) - true if the sort key value begins with a particular operand. (You cannot use this function with a sort key that is of type Number.) Note that the function name begins_with is case-sensitive.

Use the ExpressionAttributeValues parameter to replace tokens such as :partitionval and :sortval with actual values at runtime.

You can optionally use the ExpressionAttributeNames parameter to replace the names of the partition key and sort key with placeholder tokens. This option might be necessary if an attribute name conflicts with a DynamoDB reserved word. For example, the following KeyConditionExpression parameter causes an error because Size is a reserved word:

  • Size = :myval

To work around this, define a placeholder (such a S) to represent the attribute name Size. KeyConditionExpression then is as follows:

  • S = :myval

For a list of reserved words, see Reserved Words in the Amazon DynamoDB Developer Guide.

For more information on ExpressionAttributeNames and ExpressionAttributeValues, see Using Placeholders for Attribute Names and Values in the Amazon DynamoDB Developer Guide.

Definition at line 1254 of file QueryRequest.h.

◆ GetKeyConditions()

const Aws::Map<Aws::String, Condition>& Aws::DynamoDB::Model::QueryRequest::GetKeyConditions ( ) const
inline

This is a legacy parameter. Use KeyConditionExpression instead. For more information, see KeyConditions in the Amazon DynamoDB Developer Guide.

Definition at line 570 of file QueryRequest.h.

◆ GetLimit()

int Aws::DynamoDB::Model::QueryRequest::GetLimit ( ) const
inline

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 Query and Scan in the Amazon DynamoDB Developer Guide.

Definition at line 475 of file QueryRequest.h.

◆ GetProjectionExpression()

const Aws::String& Aws::DynamoDB::Model::QueryRequest::GetProjectionExpression ( ) const
inline

A string that identifies one or more attributes to retrieve from the table. 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 Accessing Item Attributes in the Amazon DynamoDB Developer Guide.

Definition at line 998 of file QueryRequest.h.

◆ GetQueryFilter()

const Aws::Map<Aws::String, Condition>& Aws::DynamoDB::Model::QueryRequest::GetQueryFilter ( ) const
inline

This is a legacy parameter. Use FilterExpression instead. For more information, see QueryFilter in the Amazon DynamoDB Developer Guide.

Definition at line 667 of file QueryRequest.h.

◆ GetRequestSpecificHeaders()

Aws::Http::HeaderValueCollection Aws::DynamoDB::Model::QueryRequest::GetRequestSpecificHeaders ( ) const
overridevirtual

Reimplemented from Aws::DynamoDB::DynamoDBRequest.

◆ GetReturnConsumedCapacity()

const ReturnConsumedCapacity& Aws::DynamoDB::Model::QueryRequest::GetReturnConsumedCapacity ( ) const
inline

Definition at line 970 of file QueryRequest.h.

◆ GetScanIndexForward()

bool Aws::DynamoDB::Model::QueryRequest::GetScanIndexForward ( ) const
inline

Specifies the order for index traversal: If true (default), the traversal is performed in ascending order; if false, the traversal is performed in descending order.

Items with the same partition key value are stored in sorted order by sort key. If the sort key data type is Number, the results are stored in numeric order. For type String, the results are stored in order of UTF-8 bytes. For type Binary, DynamoDB treats each byte of the binary data as unsigned.

If ScanIndexForward is true, DynamoDB returns the results in the order in which they are stored (by sort key value). This is the default behavior. If ScanIndexForward is false, DynamoDB reads the results in reverse order by sort key value, and then returns the results to the client.

Definition at line 821 of file QueryRequest.h.

◆ GetSelect()

const Select& Aws::DynamoDB::Model::QueryRequest::GetSelect ( ) const
inline

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.

  • SPECIFIC_ATTRIBUTES - Returns only the attributes listed in AttributesToGet. This return value is equivalent to specifying AttributesToGet 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 will read 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 AttributesToGet 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 AttributesToGet together in a single request, unless the value for Select is SPECIFIC_ATTRIBUTES. (This usage is equivalent to specifying AttributesToGet 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.

Definition at line 191 of file QueryRequest.h.

◆ GetServiceRequestName()

virtual const char* Aws::DynamoDB::Model::QueryRequest::GetServiceRequestName ( ) const
inlineoverridevirtual

Implements Aws::AmazonWebServiceRequest.

Definition at line 41 of file QueryRequest.h.

◆ GetTableName()

const Aws::String& Aws::DynamoDB::Model::QueryRequest::GetTableName ( ) const
inline

The name of the table containing the requested items.

Definition at line 51 of file QueryRequest.h.

◆ IndexNameHasBeenSet()

bool Aws::DynamoDB::Model::QueryRequest::IndexNameHasBeenSet ( ) const
inline

The name of an index to query. This index can be any local secondary index or global secondary index on the table. Note that if you use the IndexName parameter, you must also provide TableName.

Definition at line 103 of file QueryRequest.h.

◆ KeyConditionExpressionHasBeenSet()

bool Aws::DynamoDB::Model::QueryRequest::KeyConditionExpressionHasBeenSet ( ) const
inline

The condition that specifies the key values for items to be retrieved by the Query action.

The condition must perform an equality test on a single partition key value.

The condition can optionally perform one of several comparison tests on a single sort key value. This allows Query to retrieve one item with a given partition key value and sort key value, or several items that have the same partition key value but different sort key values.

The partition key equality test is required, and must be specified in the following format:

partitionKeyName = :partitionkeyval

If you also want to provide a condition for the sort key, it must be combined using AND with the condition for the sort key. Following is an example, using the = comparison operator for the sort key:

partitionKeyName = :partitionkeyval AND sortKeyName = :sortkeyval

Valid comparisons for the sort key condition are as follows:

  • sortKeyName = :sortkeyval - true if the sort key value is equal to :sortkeyval.

  • sortKeyName < :sortkeyval - true if the sort key value is less than :sortkeyval.

  • sortKeyName <= :sortkeyval - true if the sort key value is less than or equal to :sortkeyval.

  • sortKeyName > :sortkeyval - true if the sort key value is greater than :sortkeyval.

  • sortKeyName >= :sortkeyval - true if the sort key value is greater than or equal to :sortkeyval.

  • sortKeyName BETWEEN :sortkeyval1 AND :sortkeyval2 - true if the sort key value is greater than or equal to :sortkeyval1, and less than or equal to :sortkeyval2.

  • begins_with ( sortKeyName, :sortkeyval ) - true if the sort key value begins with a particular operand. (You cannot use this function with a sort key that is of type Number.) Note that the function name begins_with is case-sensitive.

Use the ExpressionAttributeValues parameter to replace tokens such as :partitionval and :sortval with actual values at runtime.

You can optionally use the ExpressionAttributeNames parameter to replace the names of the partition key and sort key with placeholder tokens. This option might be necessary if an attribute name conflicts with a DynamoDB reserved word. For example, the following KeyConditionExpression parameter causes an error because Size is a reserved word:

  • Size = :myval

To work around this, define a placeholder (such a S) to represent the attribute name Size. KeyConditionExpression then is as follows:

  • S = :myval

For a list of reserved words, see Reserved Words in the Amazon DynamoDB Developer Guide.

For more information on ExpressionAttributeNames and ExpressionAttributeValues, see Using Placeholders for Attribute Names and Values in the Amazon DynamoDB Developer Guide.

Definition at line 1312 of file QueryRequest.h.

◆ KeyConditionsHasBeenSet()

bool Aws::DynamoDB::Model::QueryRequest::KeyConditionsHasBeenSet ( ) const
inline

This is a legacy parameter. Use KeyConditionExpression instead. For more information, see KeyConditions in the Amazon DynamoDB Developer Guide.

Definition at line 578 of file QueryRequest.h.

◆ LimitHasBeenSet()

bool Aws::DynamoDB::Model::QueryRequest::LimitHasBeenSet ( ) const
inline

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 Query and Scan in the Amazon DynamoDB Developer Guide.

Definition at line 490 of file QueryRequest.h.

◆ ProjectionExpressionHasBeenSet()

bool Aws::DynamoDB::Model::QueryRequest::ProjectionExpressionHasBeenSet ( ) const
inline

A string that identifies one or more attributes to retrieve from the table. 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 Accessing Item Attributes in the Amazon DynamoDB Developer Guide.

Definition at line 1010 of file QueryRequest.h.

◆ QueryFilterHasBeenSet()

bool Aws::DynamoDB::Model::QueryRequest::QueryFilterHasBeenSet ( ) const
inline

This is a legacy parameter. Use FilterExpression instead. For more information, see QueryFilter in the Amazon DynamoDB Developer Guide.

Definition at line 675 of file QueryRequest.h.

◆ ReturnConsumedCapacityHasBeenSet()

bool Aws::DynamoDB::Model::QueryRequest::ReturnConsumedCapacityHasBeenSet ( ) const
inline

Definition at line 973 of file QueryRequest.h.

◆ ScanIndexForwardHasBeenSet()

bool Aws::DynamoDB::Model::QueryRequest::ScanIndexForwardHasBeenSet ( ) const
inline

Specifies the order for index traversal: If true (default), the traversal is performed in ascending order; if false, the traversal is performed in descending order.

Items with the same partition key value are stored in sorted order by sort key. If the sort key data type is Number, the results are stored in numeric order. For type String, the results are stored in order of UTF-8 bytes. For type Binary, DynamoDB treats each byte of the binary data as unsigned.

If ScanIndexForward is true, DynamoDB returns the results in the order in which they are stored (by sort key value). This is the default behavior. If ScanIndexForward is false, DynamoDB reads the results in reverse order by sort key value, and then returns the results to the client.

Definition at line 837 of file QueryRequest.h.

◆ SelectHasBeenSet()

bool Aws::DynamoDB::Model::QueryRequest::SelectHasBeenSet ( ) const
inline

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.

  • SPECIFIC_ATTRIBUTES - Returns only the attributes listed in AttributesToGet. This return value is equivalent to specifying AttributesToGet 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 will read 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 AttributesToGet 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 AttributesToGet together in a single request, unless the value for Select is SPECIFIC_ATTRIBUTES. (This usage is equivalent to specifying AttributesToGet 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.

Definition at line 230 of file QueryRequest.h.

◆ SerializePayload()

Aws::String Aws::DynamoDB::Model::QueryRequest::SerializePayload ( ) const
overridevirtual

Convert payload into String.

Implements Aws::AmazonSerializableWebServiceRequest.

◆ SetAttributesToGet() [1/2]

void Aws::DynamoDB::Model::QueryRequest::SetAttributesToGet ( const Aws::Vector< Aws::String > &  value)
inline

This is a legacy parameter. Use ProjectionExpression instead. For more information, see AttributesToGet in the Amazon DynamoDB Developer Guide.

Definition at line 411 of file QueryRequest.h.

◆ SetAttributesToGet() [2/2]

void Aws::DynamoDB::Model::QueryRequest::SetAttributesToGet ( Aws::Vector< Aws::String > &&  value)
inline

This is a legacy parameter. Use ProjectionExpression instead. For more information, see AttributesToGet in the Amazon DynamoDB Developer Guide.

Definition at line 419 of file QueryRequest.h.

◆ SetConditionalOperator() [1/2]

void Aws::DynamoDB::Model::QueryRequest::SetConditionalOperator ( const ConditionalOperator value)
inline

This is a legacy parameter. Use FilterExpression instead. For more information, see ConditionalOperator in the Amazon DynamoDB Developer Guide.

Definition at line 780 of file QueryRequest.h.

◆ SetConditionalOperator() [2/2]

void Aws::DynamoDB::Model::QueryRequest::SetConditionalOperator ( ConditionalOperator &&  value)
inline

This is a legacy parameter. Use FilterExpression instead. For more information, see ConditionalOperator in the Amazon DynamoDB Developer Guide.

Definition at line 788 of file QueryRequest.h.

◆ SetConsistentRead()

void Aws::DynamoDB::Model::QueryRequest::SetConsistentRead ( bool  value)
inline

Determines the read consistency model: If set to true, then the operation uses strongly consistent reads; otherwise, the operation uses eventually consistent reads.

Strongly consistent reads are not supported on global secondary indexes. If you query a global secondary index with ConsistentRead set to true, you will receive a ValidationException.

Definition at line 551 of file QueryRequest.h.

◆ SetExclusiveStartKey() [1/2]

void Aws::DynamoDB::Model::QueryRequest::SetExclusiveStartKey ( const Aws::Map< Aws::String, AttributeValue > &  value)
inline

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.

Definition at line 894 of file QueryRequest.h.

◆ SetExclusiveStartKey() [2/2]

void Aws::DynamoDB::Model::QueryRequest::SetExclusiveStartKey ( Aws::Map< Aws::String, AttributeValue > &&  value)
inline

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.

Definition at line 902 of file QueryRequest.h.

◆ SetExpressionAttributeNames() [1/2]

void Aws::DynamoDB::Model::QueryRequest::SetExpressionAttributeNames ( const Aws::Map< Aws::String, Aws::String > &  value)
inline

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.

Definition at line 1742 of file QueryRequest.h.

◆ SetExpressionAttributeNames() [2/2]

void Aws::DynamoDB::Model::QueryRequest::SetExpressionAttributeNames ( Aws::Map< Aws::String, Aws::String > &&  value)
inline

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.

Definition at line 1769 of file QueryRequest.h.

◆ SetExpressionAttributeValues() [1/2]

void Aws::DynamoDB::Model::QueryRequest::SetExpressionAttributeValues ( const Aws::Map< Aws::String, AttributeValue > &  value)
inline

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 Specifying Conditions in the Amazon DynamoDB Developer Guide.

Definition at line 2064 of file QueryRequest.h.

◆ SetExpressionAttributeValues() [2/2]

void Aws::DynamoDB::Model::QueryRequest::SetExpressionAttributeValues ( Aws::Map< Aws::String, AttributeValue > &&  value)
inline

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 Specifying Conditions in the Amazon DynamoDB Developer Guide.

Definition at line 2081 of file QueryRequest.h.

◆ SetFilterExpression() [1/3]

void Aws::DynamoDB::Model::QueryRequest::SetFilterExpression ( const Aws::String value)
inline

A string that contains conditions that DynamoDB applies after the Query operation, but before the data is returned to you. Items that do not satisfy the FilterExpression criteria are not returned.

A FilterExpression does not allow key attributes. You cannot define a filter expression based on a partition key or a sort key.

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.

Definition at line 1125 of file QueryRequest.h.

◆ SetFilterExpression() [2/3]

void Aws::DynamoDB::Model::QueryRequest::SetFilterExpression ( Aws::String &&  value)
inline

A string that contains conditions that DynamoDB applies after the Query operation, but before the data is returned to you. Items that do not satisfy the FilterExpression criteria are not returned.

A FilterExpression does not allow key attributes. You cannot define a filter expression based on a partition key or a sort key.

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.

Definition at line 1139 of file QueryRequest.h.

◆ SetFilterExpression() [3/3]

void Aws::DynamoDB::Model::QueryRequest::SetFilterExpression ( const char *  value)
inline

A string that contains conditions that DynamoDB applies after the Query operation, but before the data is returned to you. Items that do not satisfy the FilterExpression criteria are not returned.

A FilterExpression does not allow key attributes. You cannot define a filter expression based on a partition key or a sort key.

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.

Definition at line 1153 of file QueryRequest.h.

◆ SetIndexName() [1/3]

void Aws::DynamoDB::Model::QueryRequest::SetIndexName ( const Aws::String value)
inline

The name of an index to query. This index can be any local secondary index or global secondary index on the table. Note that if you use the IndexName parameter, you must also provide TableName.

Definition at line 111 of file QueryRequest.h.

◆ SetIndexName() [2/3]

void Aws::DynamoDB::Model::QueryRequest::SetIndexName ( Aws::String &&  value)
inline

The name of an index to query. This index can be any local secondary index or global secondary index on the table. Note that if you use the IndexName parameter, you must also provide TableName.

Definition at line 119 of file QueryRequest.h.

◆ SetIndexName() [3/3]

void Aws::DynamoDB::Model::QueryRequest::SetIndexName ( const char *  value)
inline

The name of an index to query. This index can be any local secondary index or global secondary index on the table. Note that if you use the IndexName parameter, you must also provide TableName.

Definition at line 127 of file QueryRequest.h.

◆ SetKeyConditionExpression() [1/3]

void Aws::DynamoDB::Model::QueryRequest::SetKeyConditionExpression ( const Aws::String value)
inline

The condition that specifies the key values for items to be retrieved by the Query action.

The condition must perform an equality test on a single partition key value.

The condition can optionally perform one of several comparison tests on a single sort key value. This allows Query to retrieve one item with a given partition key value and sort key value, or several items that have the same partition key value but different sort key values.

The partition key equality test is required, and must be specified in the following format:

partitionKeyName = :partitionkeyval

If you also want to provide a condition for the sort key, it must be combined using AND with the condition for the sort key. Following is an example, using the = comparison operator for the sort key:

partitionKeyName = :partitionkeyval AND sortKeyName = :sortkeyval

Valid comparisons for the sort key condition are as follows:

  • sortKeyName = :sortkeyval - true if the sort key value is equal to :sortkeyval.

  • sortKeyName < :sortkeyval - true if the sort key value is less than :sortkeyval.

  • sortKeyName <= :sortkeyval - true if the sort key value is less than or equal to :sortkeyval.

  • sortKeyName > :sortkeyval - true if the sort key value is greater than :sortkeyval.

  • sortKeyName >= :sortkeyval - true if the sort key value is greater than or equal to :sortkeyval.

  • sortKeyName BETWEEN :sortkeyval1 AND :sortkeyval2 - true if the sort key value is greater than or equal to :sortkeyval1, and less than or equal to :sortkeyval2.

  • begins_with ( sortKeyName, :sortkeyval ) - true if the sort key value begins with a particular operand. (You cannot use this function with a sort key that is of type Number.) Note that the function name begins_with is case-sensitive.

Use the ExpressionAttributeValues parameter to replace tokens such as :partitionval and :sortval with actual values at runtime.

You can optionally use the ExpressionAttributeNames parameter to replace the names of the partition key and sort key with placeholder tokens. This option might be necessary if an attribute name conflicts with a DynamoDB reserved word. For example, the following KeyConditionExpression parameter causes an error because Size is a reserved word:

  • Size = :myval

To work around this, define a placeholder (such a S) to represent the attribute name Size. KeyConditionExpression then is as follows:

  • S = :myval

For a list of reserved words, see Reserved Words in the Amazon DynamoDB Developer Guide.

For more information on ExpressionAttributeNames and ExpressionAttributeValues, see Using Placeholders for Attribute Names and Values in the Amazon DynamoDB Developer Guide.

Definition at line 1370 of file QueryRequest.h.

◆ SetKeyConditionExpression() [2/3]

void Aws::DynamoDB::Model::QueryRequest::SetKeyConditionExpression ( Aws::String &&  value)
inline

The condition that specifies the key values for items to be retrieved by the Query action.

The condition must perform an equality test on a single partition key value.

The condition can optionally perform one of several comparison tests on a single sort key value. This allows Query to retrieve one item with a given partition key value and sort key value, or several items that have the same partition key value but different sort key values.

The partition key equality test is required, and must be specified in the following format:

partitionKeyName = :partitionkeyval

If you also want to provide a condition for the sort key, it must be combined using AND with the condition for the sort key. Following is an example, using the = comparison operator for the sort key:

partitionKeyName = :partitionkeyval AND sortKeyName = :sortkeyval

Valid comparisons for the sort key condition are as follows:

  • sortKeyName = :sortkeyval - true if the sort key value is equal to :sortkeyval.

  • sortKeyName < :sortkeyval - true if the sort key value is less than :sortkeyval.

  • sortKeyName <= :sortkeyval - true if the sort key value is less than or equal to :sortkeyval.

  • sortKeyName > :sortkeyval - true if the sort key value is greater than :sortkeyval.

  • sortKeyName >= :sortkeyval - true if the sort key value is greater than or equal to :sortkeyval.

  • sortKeyName BETWEEN :sortkeyval1 AND :sortkeyval2 - true if the sort key value is greater than or equal to :sortkeyval1, and less than or equal to :sortkeyval2.

  • begins_with ( sortKeyName, :sortkeyval ) - true if the sort key value begins with a particular operand. (You cannot use this function with a sort key that is of type Number.) Note that the function name begins_with is case-sensitive.

Use the ExpressionAttributeValues parameter to replace tokens such as :partitionval and :sortval with actual values at runtime.

You can optionally use the ExpressionAttributeNames parameter to replace the names of the partition key and sort key with placeholder tokens. This option might be necessary if an attribute name conflicts with a DynamoDB reserved word. For example, the following KeyConditionExpression parameter causes an error because Size is a reserved word:

  • Size = :myval

To work around this, define a placeholder (such a S) to represent the attribute name Size. KeyConditionExpression then is as follows:

  • S = :myval

For a list of reserved words, see Reserved Words in the Amazon DynamoDB Developer Guide.

For more information on ExpressionAttributeNames and ExpressionAttributeValues, see Using Placeholders for Attribute Names and Values in the Amazon DynamoDB Developer Guide.

Definition at line 1428 of file QueryRequest.h.

◆ SetKeyConditionExpression() [3/3]

void Aws::DynamoDB::Model::QueryRequest::SetKeyConditionExpression ( const char *  value)
inline

The condition that specifies the key values for items to be retrieved by the Query action.

The condition must perform an equality test on a single partition key value.

The condition can optionally perform one of several comparison tests on a single sort key value. This allows Query to retrieve one item with a given partition key value and sort key value, or several items that have the same partition key value but different sort key values.

The partition key equality test is required, and must be specified in the following format:

partitionKeyName = :partitionkeyval

If you also want to provide a condition for the sort key, it must be combined using AND with the condition for the sort key. Following is an example, using the = comparison operator for the sort key:

partitionKeyName = :partitionkeyval AND sortKeyName = :sortkeyval

Valid comparisons for the sort key condition are as follows:

  • sortKeyName = :sortkeyval - true if the sort key value is equal to :sortkeyval.

  • sortKeyName < :sortkeyval - true if the sort key value is less than :sortkeyval.

  • sortKeyName <= :sortkeyval - true if the sort key value is less than or equal to :sortkeyval.

  • sortKeyName > :sortkeyval - true if the sort key value is greater than :sortkeyval.

  • sortKeyName >= :sortkeyval - true if the sort key value is greater than or equal to :sortkeyval.

  • sortKeyName BETWEEN :sortkeyval1 AND :sortkeyval2 - true if the sort key value is greater than or equal to :sortkeyval1, and less than or equal to :sortkeyval2.

  • begins_with ( sortKeyName, :sortkeyval ) - true if the sort key value begins with a particular operand. (You cannot use this function with a sort key that is of type Number.) Note that the function name begins_with is case-sensitive.

Use the ExpressionAttributeValues parameter to replace tokens such as :partitionval and :sortval with actual values at runtime.

You can optionally use the ExpressionAttributeNames parameter to replace the names of the partition key and sort key with placeholder tokens. This option might be necessary if an attribute name conflicts with a DynamoDB reserved word. For example, the following KeyConditionExpression parameter causes an error because Size is a reserved word:

  • Size = :myval

To work around this, define a placeholder (such a S) to represent the attribute name Size. KeyConditionExpression then is as follows:

  • S = :myval

For a list of reserved words, see Reserved Words in the Amazon DynamoDB Developer Guide.

For more information on ExpressionAttributeNames and ExpressionAttributeValues, see Using Placeholders for Attribute Names and Values in the Amazon DynamoDB Developer Guide.

Definition at line 1486 of file QueryRequest.h.

◆ SetKeyConditions() [1/2]

void Aws::DynamoDB::Model::QueryRequest::SetKeyConditions ( const Aws::Map< Aws::String, Condition > &  value)
inline

This is a legacy parameter. Use KeyConditionExpression instead. For more information, see KeyConditions in the Amazon DynamoDB Developer Guide.

Definition at line 586 of file QueryRequest.h.

◆ SetKeyConditions() [2/2]

void Aws::DynamoDB::Model::QueryRequest::SetKeyConditions ( Aws::Map< Aws::String, Condition > &&  value)
inline

This is a legacy parameter. Use KeyConditionExpression instead. For more information, see KeyConditions in the Amazon DynamoDB Developer Guide.

Definition at line 594 of file QueryRequest.h.

◆ SetLimit()

void Aws::DynamoDB::Model::QueryRequest::SetLimit ( int  value)
inline

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 Query and Scan in the Amazon DynamoDB Developer Guide.

Definition at line 505 of file QueryRequest.h.

◆ SetProjectionExpression() [1/3]

void Aws::DynamoDB::Model::QueryRequest::SetProjectionExpression ( const Aws::String value)
inline

A string that identifies one or more attributes to retrieve from the table. 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 Accessing Item Attributes in the Amazon DynamoDB Developer Guide.

Definition at line 1022 of file QueryRequest.h.

◆ SetProjectionExpression() [2/3]

void Aws::DynamoDB::Model::QueryRequest::SetProjectionExpression ( Aws::String &&  value)
inline

A string that identifies one or more attributes to retrieve from the table. 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 Accessing Item Attributes in the Amazon DynamoDB Developer Guide.

Definition at line 1034 of file QueryRequest.h.

◆ SetProjectionExpression() [3/3]

void Aws::DynamoDB::Model::QueryRequest::SetProjectionExpression ( const char *  value)
inline

A string that identifies one or more attributes to retrieve from the table. 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 Accessing Item Attributes in the Amazon DynamoDB Developer Guide.

Definition at line 1046 of file QueryRequest.h.

◆ SetQueryFilter() [1/2]

void Aws::DynamoDB::Model::QueryRequest::SetQueryFilter ( const Aws::Map< Aws::String, Condition > &  value)
inline

This is a legacy parameter. Use FilterExpression instead. For more information, see QueryFilter in the Amazon DynamoDB Developer Guide.

Definition at line 683 of file QueryRequest.h.

◆ SetQueryFilter() [2/2]

void Aws::DynamoDB::Model::QueryRequest::SetQueryFilter ( Aws::Map< Aws::String, Condition > &&  value)
inline

This is a legacy parameter. Use FilterExpression instead. For more information, see QueryFilter in the Amazon DynamoDB Developer Guide.

Definition at line 691 of file QueryRequest.h.

◆ SetReturnConsumedCapacity() [1/2]

void Aws::DynamoDB::Model::QueryRequest::SetReturnConsumedCapacity ( const ReturnConsumedCapacity value)
inline

Definition at line 976 of file QueryRequest.h.

◆ SetReturnConsumedCapacity() [2/2]

void Aws::DynamoDB::Model::QueryRequest::SetReturnConsumedCapacity ( ReturnConsumedCapacity &&  value)
inline

Definition at line 979 of file QueryRequest.h.

◆ SetScanIndexForward()

void Aws::DynamoDB::Model::QueryRequest::SetScanIndexForward ( bool  value)
inline

Specifies the order for index traversal: If true (default), the traversal is performed in ascending order; if false, the traversal is performed in descending order.

Items with the same partition key value are stored in sorted order by sort key. If the sort key data type is Number, the results are stored in numeric order. For type String, the results are stored in order of UTF-8 bytes. For type Binary, DynamoDB treats each byte of the binary data as unsigned.

If ScanIndexForward is true, DynamoDB returns the results in the order in which they are stored (by sort key value). This is the default behavior. If ScanIndexForward is false, DynamoDB reads the results in reverse order by sort key value, and then returns the results to the client.

Definition at line 853 of file QueryRequest.h.

◆ SetSelect() [1/2]

void Aws::DynamoDB::Model::QueryRequest::SetSelect ( const Select value)
inline

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.

  • SPECIFIC_ATTRIBUTES - Returns only the attributes listed in AttributesToGet. This return value is equivalent to specifying AttributesToGet 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 will read 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 AttributesToGet 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 AttributesToGet together in a single request, unless the value for Select is SPECIFIC_ATTRIBUTES. (This usage is equivalent to specifying AttributesToGet 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.

Definition at line 269 of file QueryRequest.h.

◆ SetSelect() [2/2]

void Aws::DynamoDB::Model::QueryRequest::SetSelect ( Select &&  value)
inline

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.

  • SPECIFIC_ATTRIBUTES - Returns only the attributes listed in AttributesToGet. This return value is equivalent to specifying AttributesToGet 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 will read 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 AttributesToGet 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 AttributesToGet together in a single request, unless the value for Select is SPECIFIC_ATTRIBUTES. (This usage is equivalent to specifying AttributesToGet 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.

Definition at line 308 of file QueryRequest.h.

◆ SetTableName() [1/3]

void Aws::DynamoDB::Model::QueryRequest::SetTableName ( const Aws::String value)
inline

The name of the table containing the requested items.

Definition at line 61 of file QueryRequest.h.

◆ SetTableName() [2/3]

void Aws::DynamoDB::Model::QueryRequest::SetTableName ( Aws::String &&  value)
inline

The name of the table containing the requested items.

Definition at line 66 of file QueryRequest.h.

◆ SetTableName() [3/3]

void Aws::DynamoDB::Model::QueryRequest::SetTableName ( const char *  value)
inline

The name of the table containing the requested items.

Definition at line 71 of file QueryRequest.h.

◆ TableNameHasBeenSet()

bool Aws::DynamoDB::Model::QueryRequest::TableNameHasBeenSet ( ) const
inline

The name of the table containing the requested items.

Definition at line 56 of file QueryRequest.h.

◆ WithAttributesToGet() [1/2]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::WithAttributesToGet ( const Aws::Vector< Aws::String > &  value)
inline

This is a legacy parameter. Use ProjectionExpression instead. For more information, see AttributesToGet in the Amazon DynamoDB Developer Guide.

Definition at line 427 of file QueryRequest.h.

◆ WithAttributesToGet() [2/2]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::WithAttributesToGet ( Aws::Vector< Aws::String > &&  value)
inline

This is a legacy parameter. Use ProjectionExpression instead. For more information, see AttributesToGet in the Amazon DynamoDB Developer Guide.

Definition at line 435 of file QueryRequest.h.

◆ WithConditionalOperator() [1/2]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::WithConditionalOperator ( const ConditionalOperator value)
inline

This is a legacy parameter. Use FilterExpression instead. For more information, see ConditionalOperator in the Amazon DynamoDB Developer Guide.

Definition at line 796 of file QueryRequest.h.

◆ WithConditionalOperator() [2/2]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::WithConditionalOperator ( ConditionalOperator &&  value)
inline

This is a legacy parameter. Use FilterExpression instead. For more information, see ConditionalOperator in the Amazon DynamoDB Developer Guide.

Definition at line 804 of file QueryRequest.h.

◆ WithConsistentRead()

QueryRequest& Aws::DynamoDB::Model::QueryRequest::WithConsistentRead ( bool  value)
inline

Determines the read consistency model: If set to true, then the operation uses strongly consistent reads; otherwise, the operation uses eventually consistent reads.

Strongly consistent reads are not supported on global secondary indexes. If you query a global secondary index with ConsistentRead set to true, you will receive a ValidationException.

Definition at line 561 of file QueryRequest.h.

◆ WithExclusiveStartKey() [1/2]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::WithExclusiveStartKey ( const Aws::Map< Aws::String, AttributeValue > &  value)
inline

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.

Definition at line 910 of file QueryRequest.h.

◆ WithExclusiveStartKey() [2/2]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::WithExclusiveStartKey ( Aws::Map< Aws::String, AttributeValue > &&  value)
inline

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.

Definition at line 918 of file QueryRequest.h.

◆ WithExpressionAttributeNames() [1/2]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::WithExpressionAttributeNames ( const Aws::Map< Aws::String, Aws::String > &  value)
inline

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.

Definition at line 1796 of file QueryRequest.h.

◆ WithExpressionAttributeNames() [2/2]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::WithExpressionAttributeNames ( Aws::Map< Aws::String, Aws::String > &&  value)
inline

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.

Definition at line 1823 of file QueryRequest.h.

◆ WithExpressionAttributeValues() [1/2]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::WithExpressionAttributeValues ( const Aws::Map< Aws::String, AttributeValue > &  value)
inline

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 Specifying Conditions in the Amazon DynamoDB Developer Guide.

Definition at line 2098 of file QueryRequest.h.

◆ WithExpressionAttributeValues() [2/2]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::WithExpressionAttributeValues ( Aws::Map< Aws::String, AttributeValue > &&  value)
inline

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 Specifying Conditions in the Amazon DynamoDB Developer Guide.

Definition at line 2115 of file QueryRequest.h.

◆ WithFilterExpression() [1/3]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::WithFilterExpression ( const Aws::String value)
inline

A string that contains conditions that DynamoDB applies after the Query operation, but before the data is returned to you. Items that do not satisfy the FilterExpression criteria are not returned.

A FilterExpression does not allow key attributes. You cannot define a filter expression based on a partition key or a sort key.

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.

Definition at line 1167 of file QueryRequest.h.

◆ WithFilterExpression() [2/3]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::WithFilterExpression ( Aws::String &&  value)
inline

A string that contains conditions that DynamoDB applies after the Query operation, but before the data is returned to you. Items that do not satisfy the FilterExpression criteria are not returned.

A FilterExpression does not allow key attributes. You cannot define a filter expression based on a partition key or a sort key.

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.

Definition at line 1181 of file QueryRequest.h.

◆ WithFilterExpression() [3/3]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::WithFilterExpression ( const char *  value)
inline

A string that contains conditions that DynamoDB applies after the Query operation, but before the data is returned to you. Items that do not satisfy the FilterExpression criteria are not returned.

A FilterExpression does not allow key attributes. You cannot define a filter expression based on a partition key or a sort key.

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.

Definition at line 1195 of file QueryRequest.h.

◆ WithIndexName() [1/3]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::WithIndexName ( const Aws::String value)
inline

The name of an index to query. This index can be any local secondary index or global secondary index on the table. Note that if you use the IndexName parameter, you must also provide TableName.

Definition at line 135 of file QueryRequest.h.

◆ WithIndexName() [2/3]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::WithIndexName ( Aws::String &&  value)
inline

The name of an index to query. This index can be any local secondary index or global secondary index on the table. Note that if you use the IndexName parameter, you must also provide TableName.

Definition at line 143 of file QueryRequest.h.

◆ WithIndexName() [3/3]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::WithIndexName ( const char *  value)
inline

The name of an index to query. This index can be any local secondary index or global secondary index on the table. Note that if you use the IndexName parameter, you must also provide TableName.

Definition at line 151 of file QueryRequest.h.

◆ WithKeyConditionExpression() [1/3]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::WithKeyConditionExpression ( const Aws::String value)
inline

The condition that specifies the key values for items to be retrieved by the Query action.

The condition must perform an equality test on a single partition key value.

The condition can optionally perform one of several comparison tests on a single sort key value. This allows Query to retrieve one item with a given partition key value and sort key value, or several items that have the same partition key value but different sort key values.

The partition key equality test is required, and must be specified in the following format:

partitionKeyName = :partitionkeyval

If you also want to provide a condition for the sort key, it must be combined using AND with the condition for the sort key. Following is an example, using the = comparison operator for the sort key:

partitionKeyName = :partitionkeyval AND sortKeyName = :sortkeyval

Valid comparisons for the sort key condition are as follows:

  • sortKeyName = :sortkeyval - true if the sort key value is equal to :sortkeyval.

  • sortKeyName < :sortkeyval - true if the sort key value is less than :sortkeyval.

  • sortKeyName <= :sortkeyval - true if the sort key value is less than or equal to :sortkeyval.

  • sortKeyName > :sortkeyval - true if the sort key value is greater than :sortkeyval.

  • sortKeyName >= :sortkeyval - true if the sort key value is greater than or equal to :sortkeyval.

  • sortKeyName BETWEEN :sortkeyval1 AND :sortkeyval2 - true if the sort key value is greater than or equal to :sortkeyval1, and less than or equal to :sortkeyval2.

  • begins_with ( sortKeyName, :sortkeyval ) - true if the sort key value begins with a particular operand. (You cannot use this function with a sort key that is of type Number.) Note that the function name begins_with is case-sensitive.

Use the ExpressionAttributeValues parameter to replace tokens such as :partitionval and :sortval with actual values at runtime.

You can optionally use the ExpressionAttributeNames parameter to replace the names of the partition key and sort key with placeholder tokens. This option might be necessary if an attribute name conflicts with a DynamoDB reserved word. For example, the following KeyConditionExpression parameter causes an error because Size is a reserved word:

  • Size = :myval

To work around this, define a placeholder (such a S) to represent the attribute name Size. KeyConditionExpression then is as follows:

  • S = :myval

For a list of reserved words, see Reserved Words in the Amazon DynamoDB Developer Guide.

For more information on ExpressionAttributeNames and ExpressionAttributeValues, see Using Placeholders for Attribute Names and Values in the Amazon DynamoDB Developer Guide.

Definition at line 1544 of file QueryRequest.h.

◆ WithKeyConditionExpression() [2/3]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::WithKeyConditionExpression ( Aws::String &&  value)
inline

The condition that specifies the key values for items to be retrieved by the Query action.

The condition must perform an equality test on a single partition key value.

The condition can optionally perform one of several comparison tests on a single sort key value. This allows Query to retrieve one item with a given partition key value and sort key value, or several items that have the same partition key value but different sort key values.

The partition key equality test is required, and must be specified in the following format:

partitionKeyName = :partitionkeyval

If you also want to provide a condition for the sort key, it must be combined using AND with the condition for the sort key. Following is an example, using the = comparison operator for the sort key:

partitionKeyName = :partitionkeyval AND sortKeyName = :sortkeyval

Valid comparisons for the sort key condition are as follows:

  • sortKeyName = :sortkeyval - true if the sort key value is equal to :sortkeyval.

  • sortKeyName < :sortkeyval - true if the sort key value is less than :sortkeyval.

  • sortKeyName <= :sortkeyval - true if the sort key value is less than or equal to :sortkeyval.

  • sortKeyName > :sortkeyval - true if the sort key value is greater than :sortkeyval.

  • sortKeyName >= :sortkeyval - true if the sort key value is greater than or equal to :sortkeyval.

  • sortKeyName BETWEEN :sortkeyval1 AND :sortkeyval2 - true if the sort key value is greater than or equal to :sortkeyval1, and less than or equal to :sortkeyval2.

  • begins_with ( sortKeyName, :sortkeyval ) - true if the sort key value begins with a particular operand. (You cannot use this function with a sort key that is of type Number.) Note that the function name begins_with is case-sensitive.

Use the ExpressionAttributeValues parameter to replace tokens such as :partitionval and :sortval with actual values at runtime.

You can optionally use the ExpressionAttributeNames parameter to replace the names of the partition key and sort key with placeholder tokens. This option might be necessary if an attribute name conflicts with a DynamoDB reserved word. For example, the following KeyConditionExpression parameter causes an error because Size is a reserved word:

  • Size = :myval

To work around this, define a placeholder (such a S) to represent the attribute name Size. KeyConditionExpression then is as follows:

  • S = :myval

For a list of reserved words, see Reserved Words in the Amazon DynamoDB Developer Guide.

For more information on ExpressionAttributeNames and ExpressionAttributeValues, see Using Placeholders for Attribute Names and Values in the Amazon DynamoDB Developer Guide.

Definition at line 1602 of file QueryRequest.h.

◆ WithKeyConditionExpression() [3/3]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::WithKeyConditionExpression ( const char *  value)
inline

The condition that specifies the key values for items to be retrieved by the Query action.

The condition must perform an equality test on a single partition key value.

The condition can optionally perform one of several comparison tests on a single sort key value. This allows Query to retrieve one item with a given partition key value and sort key value, or several items that have the same partition key value but different sort key values.

The partition key equality test is required, and must be specified in the following format:

partitionKeyName = :partitionkeyval

If you also want to provide a condition for the sort key, it must be combined using AND with the condition for the sort key. Following is an example, using the = comparison operator for the sort key:

partitionKeyName = :partitionkeyval AND sortKeyName = :sortkeyval

Valid comparisons for the sort key condition are as follows:

  • sortKeyName = :sortkeyval - true if the sort key value is equal to :sortkeyval.

  • sortKeyName < :sortkeyval - true if the sort key value is less than :sortkeyval.

  • sortKeyName <= :sortkeyval - true if the sort key value is less than or equal to :sortkeyval.

  • sortKeyName > :sortkeyval - true if the sort key value is greater than :sortkeyval.

  • sortKeyName >= :sortkeyval - true if the sort key value is greater than or equal to :sortkeyval.

  • sortKeyName BETWEEN :sortkeyval1 AND :sortkeyval2 - true if the sort key value is greater than or equal to :sortkeyval1, and less than or equal to :sortkeyval2.

  • begins_with ( sortKeyName, :sortkeyval ) - true if the sort key value begins with a particular operand. (You cannot use this function with a sort key that is of type Number.) Note that the function name begins_with is case-sensitive.

Use the ExpressionAttributeValues parameter to replace tokens such as :partitionval and :sortval with actual values at runtime.

You can optionally use the ExpressionAttributeNames parameter to replace the names of the partition key and sort key with placeholder tokens. This option might be necessary if an attribute name conflicts with a DynamoDB reserved word. For example, the following KeyConditionExpression parameter causes an error because Size is a reserved word:

  • Size = :myval

To work around this, define a placeholder (such a S) to represent the attribute name Size. KeyConditionExpression then is as follows:

  • S = :myval

For a list of reserved words, see Reserved Words in the Amazon DynamoDB Developer Guide.

For more information on ExpressionAttributeNames and ExpressionAttributeValues, see Using Placeholders for Attribute Names and Values in the Amazon DynamoDB Developer Guide.

Definition at line 1660 of file QueryRequest.h.

◆ WithKeyConditions() [1/2]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::WithKeyConditions ( const Aws::Map< Aws::String, Condition > &  value)
inline

This is a legacy parameter. Use KeyConditionExpression instead. For more information, see KeyConditions in the Amazon DynamoDB Developer Guide.

Definition at line 602 of file QueryRequest.h.

◆ WithKeyConditions() [2/2]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::WithKeyConditions ( Aws::Map< Aws::String, Condition > &&  value)
inline

This is a legacy parameter. Use KeyConditionExpression instead. For more information, see KeyConditions in the Amazon DynamoDB Developer Guide.

Definition at line 610 of file QueryRequest.h.

◆ WithLimit()

QueryRequest& Aws::DynamoDB::Model::QueryRequest::WithLimit ( int  value)
inline

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 Query and Scan in the Amazon DynamoDB Developer Guide.

Definition at line 520 of file QueryRequest.h.

◆ WithProjectionExpression() [1/3]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::WithProjectionExpression ( const Aws::String value)
inline

A string that identifies one or more attributes to retrieve from the table. 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 Accessing Item Attributes in the Amazon DynamoDB Developer Guide.

Definition at line 1058 of file QueryRequest.h.

◆ WithProjectionExpression() [2/3]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::WithProjectionExpression ( Aws::String &&  value)
inline

A string that identifies one or more attributes to retrieve from the table. 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 Accessing Item Attributes in the Amazon DynamoDB Developer Guide.

Definition at line 1070 of file QueryRequest.h.

◆ WithProjectionExpression() [3/3]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::WithProjectionExpression ( const char *  value)
inline

A string that identifies one or more attributes to retrieve from the table. 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 Accessing Item Attributes in the Amazon DynamoDB Developer Guide.

Definition at line 1082 of file QueryRequest.h.

◆ WithQueryFilter() [1/2]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::WithQueryFilter ( const Aws::Map< Aws::String, Condition > &  value)
inline

This is a legacy parameter. Use FilterExpression instead. For more information, see QueryFilter in the Amazon DynamoDB Developer Guide.

Definition at line 699 of file QueryRequest.h.

◆ WithQueryFilter() [2/2]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::WithQueryFilter ( Aws::Map< Aws::String, Condition > &&  value)
inline

This is a legacy parameter. Use FilterExpression instead. For more information, see QueryFilter in the Amazon DynamoDB Developer Guide.

Definition at line 707 of file QueryRequest.h.

◆ WithReturnConsumedCapacity() [1/2]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::WithReturnConsumedCapacity ( const ReturnConsumedCapacity value)
inline

Definition at line 982 of file QueryRequest.h.

◆ WithReturnConsumedCapacity() [2/2]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::WithReturnConsumedCapacity ( ReturnConsumedCapacity &&  value)
inline

Definition at line 985 of file QueryRequest.h.

◆ WithScanIndexForward()

QueryRequest& Aws::DynamoDB::Model::QueryRequest::WithScanIndexForward ( bool  value)
inline

Specifies the order for index traversal: If true (default), the traversal is performed in ascending order; if false, the traversal is performed in descending order.

Items with the same partition key value are stored in sorted order by sort key. If the sort key data type is Number, the results are stored in numeric order. For type String, the results are stored in order of UTF-8 bytes. For type Binary, DynamoDB treats each byte of the binary data as unsigned.

If ScanIndexForward is true, DynamoDB returns the results in the order in which they are stored (by sort key value). This is the default behavior. If ScanIndexForward is false, DynamoDB reads the results in reverse order by sort key value, and then returns the results to the client.

Definition at line 869 of file QueryRequest.h.

◆ WithSelect() [1/2]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::WithSelect ( const Select value)
inline

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.

  • SPECIFIC_ATTRIBUTES - Returns only the attributes listed in AttributesToGet. This return value is equivalent to specifying AttributesToGet 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 will read 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 AttributesToGet 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 AttributesToGet together in a single request, unless the value for Select is SPECIFIC_ATTRIBUTES. (This usage is equivalent to specifying AttributesToGet 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.

Definition at line 347 of file QueryRequest.h.

◆ WithSelect() [2/2]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::WithSelect ( Select &&  value)
inline

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.

  • SPECIFIC_ATTRIBUTES - Returns only the attributes listed in AttributesToGet. This return value is equivalent to specifying AttributesToGet 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 will read 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 AttributesToGet 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 AttributesToGet together in a single request, unless the value for Select is SPECIFIC_ATTRIBUTES. (This usage is equivalent to specifying AttributesToGet 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.

Definition at line 386 of file QueryRequest.h.

◆ WithTableName() [1/3]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::WithTableName ( const Aws::String value)
inline

The name of the table containing the requested items.

Definition at line 76 of file QueryRequest.h.

◆ WithTableName() [2/3]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::WithTableName ( Aws::String &&  value)
inline

The name of the table containing the requested items.

Definition at line 81 of file QueryRequest.h.

◆ WithTableName() [3/3]

QueryRequest& Aws::DynamoDB::Model::QueryRequest::WithTableName ( const char *  value)
inline

The name of the table containing the requested items.

Definition at line 86 of file QueryRequest.h.


The documentation for this class was generated from the following file: