項目の読み取り
単一項目の読み取り
単一項目の読み取りには、GetItem アクションを使用する。一部の属性のみを取得する場合には、ProjectionExpression を使用する。
{
TableName: "Music",
Key: {
"Artist": "No One You Know",
"SongTitle": "Call Me Today"
},
"ProjectionExpression": "AlbumTitle, Year, Price"
}
複数項目の読み取り
複数項目の読み取りには、Query アクションを使用する。Queryアクションは、複合プライマリキー (PartitionKeyとSortKey) のあるテーブルで使用できる。KeyConditionExpression やFilterExpression の中で、ExpressionAttributeValues の値をプレースホルダーとして使用する必要 がある。
{
TableName: "Music",
KeyConditionExpression: "Artist = :a and SongTitle = :t",
ExpressionAttributeValues: {
":a": "No One You Know",
":t": "Call Me Today"
}
}
全ての項目の読み取り
全ての項目の読み取りには、Scan アクションを使用する。FilterExpression を用いて不要な項目を除外することもできるが、Scan後に実行されることに留意が必要である。
// Return all of the values for Artist and Title
{
TableName: "Music",
ProjectionExpression: "Artist, Title"
}
項目の書き込み
新たな項目の書き込み
新たな項目の書き込みには、PutItem アクションを使用する。
{
TableName: "Music",
Item: {
"Artist":"No One You Know",
"SongTitle":"Call Me Today",
"AlbumTitle":"Somewhat Famous",
"Year": 2015,
"Price": 2.14,
"Genre": "Country",
"Tags": {
"Composers": [
"Smith",
"Jones",
"Davis"
],
"LengthInSeconds": 214
}
}
}
既存の項目の変更
既存の項目の変更には、UpdateItem アクションを使用する。既存の項目が存在する場合には更新され、存在しない場合には項目が追加 される。条件付き書き込み をサポートしており、ConditionExpression がtrueと評価されたときのみ実行される。
{
TableName: "Music",
Key: {
"Artist":"No One You Know",
"SongTitle":"Call Me Today"
},
UpdateExpression: "SET RecordLabel = :label",
ConditionExpression: "Price >= :p",
ExpressionAttributeValues: {
":label": "Global Records",
":p": 2.00
}
}
項目の削除
項目の削除には、DeleteItem アクションを使用する。条件付き削除 をサポートしており、ConditionExpression がtrueと評価されたときのみ実行される。
{
TableName: "Music",
Key: {
Artist: "The Acme Band",
SongTitle: "Look Out, World"
},
ConditionExpression: "attribute_exists(RecordLabel)"
}