

# Tipos de datos de PartiQL para DynamoDB
<a name="ql-reference.data-types"></a>

En la tabla siguiente se enumeran los tipos de datos que puede usar con PartiQL para DynamoDB.


| Tipo de dato de DynamoDB | Representación PartiQL | Notas | 
| --- | --- | --- | 
| Boolean | TRUE, FALSE | No distingue entre mayúsculas y minúsculas. | 
| Binary | N/A | Sólo se admite a través de código. | 
| List | [valor1, valor2,...] | No hay ninguna restricción respecto a los tipos de datos que se pueden almacenar en una entrada de lista y no es preciso que las entradas de una entrada de lista sean del mismo tipo. | 
| Map | {“nombre”: valor} | No hay ninguna restricción respecto a los tipos de datos que se pueden almacenar en una entrada de mapa y no es preciso que las entradas de un mapa sean del mismo tipo. | 
| Null | NULL | No distingue entre mayúsculas y minúsculas. | 
| Number | 1, 1.0, 1e0  | Los números pueden ser positivos, negativos o cero. Los números pueden tener hasta 38 dígitos de precisión. | 
| Number Set | <<number1, number2>> | Los elementos de un conjunto de números deben ser del tipo Número. | 
| String Set | <<”string1”, “string2”>> | Los elementos de un conjunto de cadenas deben ser de tipo String. | 
| String | “Valor de cadena” | Se deben usar comillas simples para especificar valores String. | 

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

La instrucción siguiente muestra cómo insertar los siguientes tipos de datos: `String`, `Number`, `Map`, `List`, `Number Set` y `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'>>
}
```

La siguiente instrucción muestra cómo insertar nuevos elementos en los tipos `Map`, `List`, `Number Set` y `String Set` y cambiar el valor de un tipo `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'
```

La siguiente instrucción muestra cómo eliminar elementos de los tipos `Map`, `List`, `Number Set` y `String Set` y cambiar el valor de un tipo `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'
```

Para obtener más información, consulte [Tipos de datos de DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/HowItWorks.NamingRulesDataTypes.html#HowItWorks.DataTypes).