Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

137
Vistas
UpdateExpression para aplanar el registro

Tengo tales elementos en Dynamo DB:

 [{ "Id": "1", "Data": { "Value": "test" } }, { "Id": "2", "Data": {} }, { "Id": "3" }, { "Id": "4", "Data": { "Wrong": "234" } }]

Y estoy tratando de aplanarlo, pero solo para el campo Data.Value :

 [{ "Id": "1", "Value": "test" }, { "Id": "2" }, { "Id": "3" }, { "Id": "4" }]

Mi solicitud de actualización se ve así:

 var request = new UpdateItemRequest { TableName = "<table>", Key = new Dictionary<string, AttributeValue> {{"Id", new AttributeValue("<item-id>")}}, UpdateExpression = "SET #a = #c.#a REMOVE #c", ExpressionAttributeNames = new Dictionary<string, string> { {"#c", "Data"}, {"#a", "Value"} } };

Esto funciona bien para Id = 1 y 3. Pero no funciona para 2 y 4. Supongo que porque no puede hacer un SET. No arroja ningún error, simplemente no elimina el atributo Data .

¿Hay alguna manera de hacerlo en una sola llamada?

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

solo necesita una condición con su expresión, para verificar si el atributo existe o no, eso es todo.

 ConditionExpression ="attribute_exists (#c.#a)"

Para más detalles en Amazon doncs aquí .

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda