2

首先感谢您的时间!

地图:

Country:{
  Sweden: 3,
  US: 4,
  UK: 9
}

我如何检查地图中是否存在国家名称,如果不存在则创建它并将其设置为默认值。例如,西班牙不在地图上,我怎么能使用 if_not_exits()?

该文件在这里提到了这个功能:http: //docs.aws.amazon.com/amazondynamodb/latest/developerguide/Expressions.Modifying.html

我发现有人将 if_not_exits() 应用于列表:Is it possible to combine if_not_exists and list_append in update_item。那么它是如何在地图上工作的呢?

期待您的回复,非常感谢您!

真挚地

4

2 回答 2

3

我找到了将 if_not_exits 用于地图的解决方案:

'ExpressionAttributeValues' => [
            ':val2' => ['N' => '9']

    ],

    'UpdateExpression' => 'SET Country.Spain = if_not_exists(Country.Spain, :val2)'

此外,我还找到了先检查并在确实存在时进行更改的解决方案:

'ExpressionAttributeValues' => [
                ':val2' => ['N' => '9'],
                ':val3' => ['N' => '1']

        ],

        'UpdateExpression' => 'SET country_name.Sweden = if_not_exists(country_name.Sweden, :val2) + :val3 '
于 2016-05-25T09:15:18.490 回答
-2
<?php
$Country= array("Sweden"=>3, "US"=>4, "UK"=>9);
if(!array_key_exists("CN", $array))
{
    $Country['CN']=3;
}
?>
于 2016-05-25T09:08:36.333 回答