

# DynamoDB에 대한 PartiQL 데이터 형식
<a name="ql-reference.data-types"></a>

다음 표에는 DynamoDB용 PartiQL에서 사용할 수 있는 데이터 형식이 나와 있습니다.


| DynamoDB 데이터 형식 | PartiQL 표현 | 참고 | 
| --- | --- | --- | 
| Boolean | TRUE \| FALSE | 대/소문자를 구분하지 않습니다. | 
| Binary | 해당 사항 없음 | 코드를 통해서만 지원됩니다. | 
| List | [ value1, value2,...] | 목록 형식에 저장할 수 있는 데이터 형식에는 제한이 없으며, 목록에 있는 요소의 형식이 달라도 상관없습니다. | 
| Map | { 'name' : value } | 맵 형식에 저장할 수 있는 데이터 형식에는 제한이 없으며, 맵에 있는 요소의 형식이 달라도 상관없습니다. | 
| Null | NULL | 대/소문자를 구분하지 않습니다. | 
| Number | 1, 1.0, 1e0  | 번호는 양수, 음수 또는 0일 수 있습니다. 숫자는 최대 38자릿수까지 지원됩니다. | 
| Number Set | <<number1, number2>> | 숫자 집합의 요소는 숫자 형식이어야 합니다. | 
| String Set | <<'string1', 'string2'>> | 문자열 집합의 요소는 문자열 형식이어야 합니다. | 
| String | 'string value' | 작은 따옴표를 사용하여 문자열 값을 지정해야 합니다. | 

## 예제
<a name="ql-reference.data-types"></a>

다음 문은 `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 데이터 형식](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/HowItWorks.NamingRulesDataTypes.html#HowItWorks.DataTypes) 단원을 참조하세요.