Tipos de datos de PartiQL para DynamoDB
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
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.