Ich habe eine Dynamodb-Tabelle mit "feed_guid" als globalen sekundären Index. Ich möchte mit einer Reihe von feed_guid in dieser Tabelle abfragen. Da "feed_guid" nicht meine Primärschlüssel sind, kann ich getBatchItem nicht verwenden. Als ich die folgende Methode ausprobierte, erhielt ich diesen Fehler "Ungültiger Operator, der in KeyConditionExpression verwandt wird: ODER".Dynamodb-Abfrage - ODER-Bedingung in KeyConditionExpression
$options = array(
'TableName' => 'feed',
'IndexName' => 'GuidIndex',
'KeyConditionExpression' => 'feed_guid = :v_guid1 or feed_guid = :v_guid2',
'ExpressionAttributeValues' => array (
':v_guid1' => array('S' => '8a8106e48bdbe81bf88d611f4b2104b5'),
':v_guid2' => array('S' => '19cab76242a6d85717de64fe4f8acbd4')
),
'Select' => 'ALL_ATTRIBUTES',
);
$response = $dynamodbClient->query($options);
Dies funktioniert nicht. Es zeigt "ungültiger Operator, der in KeyConditionExpression verwandt wird: IN" Fehler. –
Verwenden Sie zwischen. IN wird für ExpressionAttributeValues – user1697575
verwendet Lesen Sie zuerst die Definition. http://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_Query.html#DDB-Query-request-KeyConditionExpression –