通过散列和范围dynamodb进行查询的问题

时间:2015-06-05 03:30:19

标签: php amazon-dynamodb nosql

我有一个带有uid的dynamodb表用于散列键和得分为范围键,我试图获得一个元素返回。不幸的是,经过所有的在线文档后,我发现我仍然遇到同样的错误:

  

AWS错误消息:KeyConditions或KeyConditionExpression   必须在请求中指定参数。

$result = $this->client->query(array(
    'TableName' => 'Leaderboard',
    'KeyConditionExpression' => 'uid = :u_id and Score >= :u_score',
    'ExpressionAttributeValues' =>  array (
        ':u_id' => array('S' => 'test'),
        ':u_score' => array('S' => '100')
    ),
    'ConsistentRead' => true
));

print_r($result['Items']);

' KeyConditionExpression'显然包含在查询参数中。 我也试过N' N' N' => ' 100'这更有意义,但这并没有解决看似无关的错误。

1 个答案:

答案 0 :(得分:0)

  • 查询项         

    $response = $client->query(array(
        'TableName' => '[Table_Name]',
        'KeyConditionExpression' => '[Hash_Name] = :v_hash and [Range_Name] = :v_range',
        'ExpressionAttributeValues' =>  array (
            ':v_hash'  => array('S' => '[Hash_Value]'),
            ':v_range' => array('S' => '[Range_Value]')
        )
    ));
    
    echo $response;
    

<小时/> 帮助

的链接

希望这有帮助