■テーブルの作成
|
aws dynamodb create-table \ --table-name テーブル名 \ --attribute-definitions \ AttributeName=カラム名1,AttributeType=S \ AttributeName=カラム名2,AttributeType=S \ --key-schema AttributeName=カラム名1,KeyType=HASH AttributeName=カラム名2,KeyType=RANGE \ --provisioned-throughput ReadCapacityUnits=1,WriteCapacityUnits=1
|
|
|
|
|
S |
文字列 |
|
N |
数値 |
|
B |
バイナリ |
テーブル名をtestとし、プライマリーパーティションキー=c1, プライマリーソートキー=c2とした。
■レコード追加
aws dynamodb put-item \ --table-name test \ --item \ '{"c1": {"S": "文字1"}, "c2": {"S": "文字2"}, "数値": {"N": "9999"}}' \ --return-consumed-capacity TOTAL |
■スキャン
|
aws dynamodb query --table-name |
■クエリー
aws dynamodb query --table-name test --key-conditions '{"c1": { "AttributeValueList": [ { "S" : "文字1" } ] , "ComparisonOperator": "EQ" } }'
aws dynamodb query --table-name test --key-conditions '{"c2": { "AttributeValueList": [ { "S" : "文" } ] , "ComparisonOperator": "BEGINS_WITH" }, "c1": { "AttributeValueList": [ { "S" : "文字1" } ] , "ComparisonOperator": "EQ" }}' |
Windows版のCLIではうまく動かなかったので、StoreのUbuntuで実行

|
キー |
|
詳細 |
|
EQ |
= |
属性が値と等しい場合 |
|
NE |
<> |
属性が値に等しくない場合 |
|
LE |
<= |
属性が値以下の場合 |
|
LT |
< |
属性が値より小さい場合 |
|
GE |
>= |
属性が値以上の場合 |
|
GT |
> |
属性が値よりも大きい場合 |
|
CONTAINS |
|
値がセットに含まれる場合、または値が別の値を含む場合 |
|
NOT_CONTAINS |
|
値がセットに含まれない場合、または値が別の値を含まない場合 |
|
BEGINS_WITH |
|
属性の先頭からの数文字が指定した値と一致した場合 |
https://docs.aws.amazon.com/ja_jp/amazondynamodb/latest/developerguide/Tools.CLI.html