選取您的 Cookie 偏好設定

我們使用提供自身網站和服務所需的基本 Cookie 和類似工具。我們使用效能 Cookie 收集匿名統計資料,以便了解客戶如何使用我們的網站並進行改進。基本 Cookie 無法停用,但可以按一下「自訂」或「拒絕」以拒絕效能 Cookie。

如果您同意,AWS 與經核准的第三方也會使用 Cookie 提供實用的網站功能、記住您的偏好設定,並顯示相關內容,包括相關廣告。若要接受或拒絕所有非必要 Cookie,請按一下「接受」或「拒絕」。若要進行更詳細的選擇,請按一下「自訂」。

在 DynamoDB 中使用投影表達式

焦點模式
在 DynamoDB 中使用投影表達式 - Amazon DynamoDB

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

若要從資料表讀取資料,您可以使用 GetItemQueryScan 等操作。Amazon DynamoDB 會依預設傳回所有項目屬性。若只要取得部分而非全部屬性,請使用投射表達式。

投射表達式是識別所需屬性的字串。若要擷取單一屬性,請指定其名稱。若為多個屬性,則必須以逗號分隔名稱。

以下是根據 在 DynamoDB 中使用表達式時參考項目屬性 中的 ProductCatalog 項目而來的一些投射表達式範例:

  • 單一最上層屬性。

    Title

  • 三個最上層屬性。DynamoDB 會擷取整個 Color 設定。

    Title, Price, Color

  • 四個最上層屬性。DynamoDB 會傳回 RelatedItemsProductReviews 的整個內容。

    Title, Description, RelatedItems, ProductReviews

注意

投影表達式不會影響佈建的輸送量消耗。DynamoDB 會根據項目大小來決定消耗的容量單位,而不是傳回給應用程式的資料量。

預留單字和特殊字元

DynamoDB 已保留單字和特殊字元。DynamoDB 可讓您使用這些保留字和特殊字元做為名稱,但我們建議您避免這麼做,因為每當您在表達式中使用這些名稱時,都必須為其使用別名。如需完整清單,請參閱 DynamoDB 中的保留字

在以下情況下,您將需要使用表達式屬性名稱來取代實際名稱:

  • 屬性名稱位於 DynamoDB 中預留字詞的清單上。

  • 屬性名稱不符合第一個字元為 a-zA-Z以及第二個字元 (如果有) 為 a-ZA-Z或 的要求0-9

  • 屬性名稱包含 # (hash) 或 (colon)。

下列 AWS CLI 範例示範如何搭配 GetItem操作使用投影表達式。此投射表達式會擷取最上層純量屬性 (Description)、清單中的第一個元素 (RelatedItems[0]),以及位於映射巢狀結構內的清單 (ProductReviews.FiveStar)。

aws dynamodb get-item \ --table-name ProductCatalog \ --key '"Id": { "N": "123" } \ --projection-expression "Description, RelatedItems[0], ProductReviews.FiveStar"

此範例會傳回下列 JSON。

{ "Item": { "Description": { "S": "123 description" }, "ProductReviews": { "M": { "FiveStar": { "L": [ { "S": "Excellent! Can't recommend it highly enough! Buy it!" }, { "S": "Do yourself a favor and buy this." } ] } } }, "RelatedItems": { "L": [ { "N": "341" } ] } } }
隱私權網站條款Cookie 偏好設定
© 2025, Amazon Web Services, Inc.或其附屬公司。保留所有權利。