2017-03-22 14 views
0
Record1: [{ 
"business_id": 2, 
"forms": { 
    "f522": { 
     "id": "f522", 
     "is_deleted": 0, 
     "title": "Form 1" 
     }, 
    "f8b6": { 
     "id": "f8b6", 
     "is_deleted": 0, 
     "title": "Form 2" 
     }, 
    "fw56": { 
     "id": "fw56", 
     "is_deleted": 0, 
     "title": "Form 3" 
     } 
} 
}] 

Record2: [{ 
"business_id": 3, 
"forms": { 
    "f788": { 
     "id": "f788", 
     "is_deleted": 0, 
     "title": "Form 11" 
    }, 
    "f6yy": { 
     "id": "f6yy", 
     "is_deleted": 0, 
     "title": "Form 12" 
    }, 
    "f00i": { 
     "id": "f00i", 
     "is_deleted": 0, 
     "title": "Form 13" 
    } 
} 
}] 

Record3: [{ 
"business_id": 4, 
"forms": { 
    "f839": { 
     "id": "f839", 
     "is_deleted": 0, 
     "title": "Form 21" 
    }, 
    "f1bc": { 
     "id": "f1bc", 
     "is_deleted": 0, 
     "title": "Form 22" 
    }, 
    "f6ac": { 
     "id": "f6ac", 
     "is_deleted": 0, 
     "title": "Form 23" 
    } 
} 
}] 

私はdynamoDBテーブルに3つのレコードを格納しています。ハッシュキーはbusiness_idです。フォームオブジェクトは、子オブジェクト(id、is_deleted、title)を持つ親オブジェクトです。私はbusiness_id値を知らない。しかし、私はid値 "f6yy"しか持っていません。私は、business_idの子オブジェクトID(値はf6yy)を使用してレコード全体が必要です。提案してください。DynamoDBの適用方法PHPでネストされたJson属性のFilterExpressionを使用したクエリ/スキャン

答えて

1

以下のフィルタ式が有効です。

のJavaScriptのフィルタ式: -

FilterExpression : 'forms.f6yy.id = :formIdVal', 
    ExpressionAttributeValues : {   
     ':formIdVal' : 'f6yy' 
    } 

PHP: -

'FilterExpression' => 'forms.f6yy.id = :formIdVal', 
関連する問題