

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Uso de consultas GraphQL para recuperar datos de una tabla de DynamoDB en la consola AWS AppSync
<a name="retrieve-data-with-graphql-query"></a>

Ahora que ya tiene un registro en su base de datos, puede obtener resultados al ejecutar una consulta. Una consulta es otra de las operaciones fundamentales de GraphQL. Se usa para analizar y recuperar información de su origen de datos. En términos de REST APIs, es similar a la operación. `GET` La principal ventaja de las consultas de GraphQL es la capacidad de especificar los requisitos de datos exactos de su aplicación para que pueda obtener los datos relevantes en el momento adecuado. 

**Para consultar su origen de datos**

1. Si aún no lo ha hecho, inicie sesión en la [AppSync consola Consola de administración de AWS y ábrala](https://console.aws.amazon.com/appsync/). 

1. Seleccione la API de la tabla.

1. En la pestaña de la izquierda, seleccione **Consultas**.

1. En la pestaña **Explorador** situada a la izquierda de la tabla, en `query` `listTodos`, expanda la operación `getTodo`:  
![\[Expanded getTodo operation showing fields id, description, name, when, and where.\]](http://docs.aws.amazon.com/es_es/appsync/latest/devguide/images/explorer-example-4.png)

1. En el editor de código, debería ver el código de operación:

   ```
   query listTodos {
     getTodo(id: "") {
       description
       id
       name
       when
       where
     }
   ```

   En `(id:"")`, introduzca el valor que guardó en el resultado de la operación de mutación. En nuestro ejemplo, sería:

   ```
   query listTodos {
     getTodo(id: "abcdefgh-1234-1234-1234-abcdefghijkl") {
       description
       id
       name
       when
       where
     }
   ```

1. Seleccione **Ejecutar** y, a continuación, **listTodos**. El resultado aparecerá a la derecha del editor. Nuestro ejemplo tenía un aspecto similar al siguiente:

   ```
   {
     "data": {
       "getTodo": {
         "description": "I need to buy eggs",
         "id": "abcdefgh-1234-1234-1234-abcdefghijkl",
         "name": "Shopping List",
         "when": "Friday",
         "where": "Home"
       }
     }
   }
   ```
**nota**  
Las consultas solo devuelven los campos especificados. Puede anular la selección de los campos que no necesite eliminándolos del campo de devolución:  

   ```
   {
       description
       id
       name
       when
       where
     }
   ```
También puede anular la selección de la casilla de la pestaña **Explorador** situada junto al campo que desea eliminar.

1. Asimismo, puede probar la operación `listTodos` repitiendo los pasos para crear una entrada en el origen de datos y, a continuación, repetir los pasos de consulta con la operación `listTodos`. A continuación, se muestra un ejemplo en el que agregamos una segunda tarea:

   ```
   {
     "createtodoinput": {
       "name": "Second Task",
       "when": "Monday",
       "where": "Home",
       "description": "I need to mow the lawn"
     }
   }
   ```

   Al llamar a la operación `listTodos`, devolvió las entradas antiguas y nuevas:

   ```
   {
     "data": {
       "listTodos": {
         "items": [
           {
             "id": "abcdefgh-1234-1234-1234-abcdefghijkl",
             "name": "Shopping List",
             "when": "Friday",
             "where": "Home",
             "description": "I need to buy eggs"
           },
           {
             "id": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
             "name": "Second Task",
             "when": "Monday",
             "where": "Home",
             "description": "I need to mow the lawn"
           }
         ]
       }
     }
   }
   ```