DynamoDB の PartiQL データ型
次の表に、DynamoDB 用の PartiQL で使用できるデータ型を、一覧で表示します。
DynamoDB データ型 | PartiQL 表現 | コメント |
---|---|---|
Boolean |
TRUE、FALSE | 大文字と小文字は区別されません。 |
Binary |
該当なし | コード経由でのみサポートされます。 |
List |
[ value1, value2,...] | List 型に保存できるデータ型に制限はなく、リスト内の要素が同じ型である必要はありません。 |
Map |
{ 'name' : value } | Map 型に保存できるデータ型に制限はなく、マップ内の要素が同じ型である必要はありません。 |
Null |
NULL | 大文字と小文字は区別されません。 |
Number |
1, 1.0, 1e0 | 数値は、正、負、または 0 とすることができます。数値は最大 38 桁の精度を持つことができます。 |
Number Set |
<<number1, number2>> | 数値セット内の要素は、Number 型でなければなりません。 |
String Set |
<<'string1', 'string2'>> | 文字列セット内の要素は、String 型でなければなりません。 |
String |
'string value' | String 型 の値を指定するには、一重引用符を使用する必要があります。 |
例
次のデータ型を挿入する方法を、次のステートメントで示します。String
、Number
、Map
、List
、Number Set
および String Set
。
INSERT INTO TypesTable value {'primarykey':'1', 'NumberType':1, 'MapType' : {'entryname1': 'value', 'entryname2': 4}, 'ListType': [1,'stringval'], 'NumberSetType':<<1,34,32,4.5>>, 'StringSetType':<<'stringval','stringval2'>> }
次のステートメントでは、Map
、List
、Number Set
および String
Set
の型に、新しい要素を挿入する方法を示しています。また、Number
型の値を変更する方法も示しています。
UPDATE TypesTable SET NumberType=NumberType + 100 SET MapType.NewMapEntry=[2020, 'stringvalue', 2.4] SET ListType = LIST_APPEND(ListType, [4, <<'string1', 'string2'>>]) SET NumberSetType= SET_ADD(NumberSetType, <<345, 48.4>>) SET StringSetType = SET_ADD(StringSetType, <<'stringsetvalue1', 'stringsetvalue2'>>) WHERE primarykey='1'
次のステートメントでは、Map
、List
、Number Set
および String
Set
の型から要素を削除する方法を示しています。また、Number
型の値を変更する方法も示しています。
UPDATE TypesTable SET NumberType=NumberType - 1 REMOVE ListType[1] REMOVE MapType.NewMapEntry SET NumberSetType = SET_DELETE( NumberSetType, <<345>>) SET StringSetType = SET_DELETE( StringSetType, <<'stringsetvalue1'>>) WHERE primarykey='1'
詳細については、「DynamoDB のデータ型」を参照してください。