在DynamoDB中,我的查询不能与PHP中的EQ
以外的ComparisonOperator一起使用。我正在使用全球二级索引:
$response = $client->query(array(
"TableName" => $tableName,
"IndexName" => "topRating", // GSI index name
"KeyConditions" => array(
"rating" => array(
"ComparisonOperator" => "NE", // Only 'EQ' works
"AttributeValueList" => array(
array(Type::STRING => "1186") // Sample value
)
)
),
"ScanIndexForward" => true,
"limit" => 5
));
创建表时,我使用rating
作为哈希键来创建topRating
GSI
回复如下:
致命错误:未捕获的Aws \ DynamoDb \ Exception \ ValidationException:AWS 错误代码:ValidationException,状态代码:400,AWS Request ID: XXXXXYYYYYZZZZ,AWS错误类型:客户端,AWS错误消息:已尝试 条件约束不是可索引操作,User-Agent: aws-sdk-php2 / 2.7.0 Guzzle / 3.9.2 curl / 7.19.7 PHP / 5.4.30投入....