

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Scan
<a name="API_Scan_v20111205"></a>

**Importante**  
***In questa sezione si fa riferimento alla versione API 2011-12-05, che è obsoleta e non deve essere utilizzata per le nuove applicazioni.***  
 **Per informazioni sull'API di basso livello corrente, consulta la [Amazon DynamoDB API Reference](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/).**

## Descrizione
<a name="API_Scan_Description"></a>

L'operazione `Scan` restituisce uno o più elementi e i relativi attributi eseguendo una scansione completa di una tabella. Fornire un `ScanFilter` per ottenere risultati più specifici. 

**Nota**  
Se il numero totale di elementi sottoposti a scansione supera il limite di 1 MB, la scansione viene interrotta e i risultati vengono restituiti all'utente con un `LastEvaluatedKey` per continuare la scansione in un'operazione successiva. I risultati includono anche il numero di elementi che superano il limite. Una scansione può comportare l'assenza di dati di tabella che soddisfano i criteri di filtro.   
Il set di risultati è a consistenza finale. 

## Richieste
<a name="API_Scan_RequestParameters"></a>

### Sintassi
<a name="API_Scan_RequestParameters.syntax"></a>

```
// This header is abbreviated.
// For a sample of a complete header, see API DynamoDB di basso livello.
POST / HTTP/1.1 
x-amz-target: DynamoDB_20111205.Scan  
content-type: application/x-amz-json-1.0

{"TableName":"Table1",
    "Limit": 2,
    "ScanFilter":{
        "AttributeName1":{"AttributeValueList":[{"S":"AttributeValue"}],"ComparisonOperator":"EQ"}
    },
    "ExclusiveStartKey":{
        "HashKeyElement":{"S":"AttributeName1"},
        "RangeKeyElement":{"N":"AttributeName2"}
    },
    "AttributesToGet":["AttributeName1", "AttributeName2", "AttributeName3"]},
}
```


****  

|  Nome  |  Descrizione  |  Richiesto | 
| --- | --- | --- | 
|  TableName  |  Il nome della tabella che contiene gli elementi richiesti. Tipo: string  |  Sì  | 
| AttributesToGet  | Matrice di nomi di attributi. Se i nomi degli attributi non sono specificati, verranno restituiti tutti gli attributi. Se alcuni attributi non vengono trovati, non verranno visualizzati nel risultato.Tipo: Array | No | 
| Limit  | Il numero massimo di item da valutare (non necessariamente il numero di item corrispondenti). Se DynamoDB elabora il numero di elementi fino al limite durante l'elaborazione dei risultati, si arresta e restituisce i valori corrispondenti fino a quel punto e un `LastEvaluatedKey` da applicare in un'operazione successiva per continuare a recuperare gli elementi. Inoltre, se la dimensione del set di dati sottoposti a scansione supera 1 MB prima che DynamoDB raggiunga questo limite, interrompe la scansione e restituisce i valori corrispondenti fino al limite e un `LastEvaluatedKey` da applicare in un'operazione successiva per continuare la scansione.Tipo: numero | No | 
| Count  | Se impostato su `true`, DynamoDB restituisce un numero totale di elementi per l'operazione di scansione, anche se l'operazione non contiene elementi corrispondenti per il filtro assegnato. È possibile applicare il parametro Limit alle scansioni di solo conteggio.  Non impostare `Count` su `true` mentre si fornisce un elenco di `AttributesToGet`; in caso contrario, DynamoDB restituirà un errore di convalida. Per ulteriori informazioni, consulta [Conteggio degli elementi nei risultati](Scan.md#Scan.Count).Tipo: Booleano | No | 
| ScanFilter  | Valuta i risultati della scansione e restituisce solo i valori desiderati. Le condizioni multiple sono trattate come operazioni "AND": per essere incluse nei risultati tutte le condizioni devono essere soddisfatte. Tipo: una mappa dei nomi degli attributi ai valori con operatori di confronto. | No | 
| ScanFilter:AttributeValueList | I valori e le condizioni per valutare i risultati della scansione per il filtro.Tipo: una mappa di `AttributeValue` ad un `Condition`. | No | 
| ScanFilter:​ ComparisonOperator | I criteri per valutare gli attributi forniti, come uguale, maggiore di, ecc. Di seguito sono riportati operatori di confronto validi per un'operazione di scansione. I confronti di valori String per maggiore di, uguale o minore di si basano sui valori del codice di caratteri ASCII. Ad esempio, `a` è maggiore di `A` e `aa` è maggiore di `B`. Per l'elenco dei valori di codifica, vedi [http://en.wikipedia.org/wiki/ASCII\$1ASCII\$1printable\$1characters](http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters). Per Binary, DynamoDB tratta ciascun byte dei dati binari come non firmato quando confronta i valori binari, ad esempio quando valuta le espressioni di query.   Tipo: String o Binary  | No | 
|   | `EQ`: uguale. Per `EQ`, `AttributeValueList` può contenere solo un `AttributeValue` di tipo String, Number o Binary (non un set). Se un elemento contiene un `AttributeValue` di un tipo diverso da quello specificato nella richiesta, il valore non corrisponde. Ad esempio, `{"S":"6"}` non è uguale a `{"N":"6"}`. Inoltre, `{"N":"6"}` non è uguale a `{"NS":["6", "2", "1"]}`. |   | 
|   | `NE`: non uguale. Per `NE`, `AttributeValueList` può contenere solo un `AttributeValue` di tipo String, Number o Binary (non un set). Se un elemento contiene un `AttributeValue` di un tipo diverso da quello specificato nella richiesta, il valore non corrisponde. Ad esempio, `{"S":"6"}` non è uguale a `{"N":"6"}`. Inoltre, `{"N":"6"}` non è uguale a `{"NS":["6", "2", "1"]}`. |   | 
|   | `LE`: minore o uguale a. Per `LE`, `AttributeValueList` può contenere solo un `AttributeValue` di tipo String, Number o Binary (non un set). Se un elemento contiene un `AttributeValue` di un tipo diverso da quello specificato nella richiesta, il valore non corrisponde. Ad esempio, `{"S":"6"}` non è uguale a `{"N":"6"}`. Inoltre, `{"N":"6"}` non si confronta con `{"NS":["6", "2", "1"]}`. |   | 
|   | `LT`: minore di. Per `LT`, `AttributeValueList` può contenere solo un `AttributeValue` di tipo String, Number o Binary (non un set). Se un elemento contiene un `AttributeValue` di un tipo diverso da quello specificato nella richiesta, il valore non corrisponde. Ad esempio, `{"S":"6"}` non è uguale a `{"N":"6"}`. Inoltre, `{"N":"6"}` non si confronta con `{"NS":["6", "2", "1"]}`. |   | 
|   | `GE`: maggiore o uguale a. Per `GE`, `AttributeValueList` può contenere solo un `AttributeValue` di tipo String, Number o Binary (non un set). Se un elemento contiene un `AttributeValue` di un tipo diverso da quello specificato nella richiesta, il valore non corrisponde. Ad esempio, `{"S":"6"}` non è uguale a `{"N":"6"}`. Inoltre, `{"N":"6"}` non si confronta con `{"NS":["6", "2", "1"]}`. |   | 
|   | `GT`: maggiore di. Per `GT`, `AttributeValueList` può contenere solo un `AttributeValue` di tipo String, Number o Binary (non un set). Se un elemento contiene un `AttributeValue` di un tipo diverso da quello specificato nella richiesta, il valore non corrisponde. Ad esempio, `{"S":"6"}` non è uguale a `{"N":"6"}`. Inoltre, `{"N":"6"}` non si confronta con `{"NS":["6", "2", "1"]}`. |   | 
|   | `NOT_NULL`: l'attributo esiste.  |   | 
|   | `NULL`: l'attributo non esiste.  |   | 
|   | `CONTAINS`: controlla la presenza di una sottosequenza o di un valore in un set. Per `CONTAINS`, `AttributeValueList` può contenere solo un `AttributeValue` di tipo String, Number o Binary (non un set). Se l'attributo di destinazione del confronto è String, l'operazione verifica la presenza di una corrispondenza di sottostringa. Se l'attributo di destinazione del confronto è Binary, l'operazione cerca una sottosequenza della destinazione che corrisponde all'input. Se l'attributo di destinazione del confronto è un set ("SS", "NS" o "BS"), l'operazione verifica la presenza di un membro del set (non come sottostringa). |   | 
|   | `NOT_CONTAINS`: controlla l'assenza di una sottosequenza o l'assenza di un valore in un set. Per `NOT_CONTAINS`, `AttributeValueList` può contenere solo un `AttributeValue` di tipo String, Number o Binary (non un set). Se l'attributo di destinazione del confronto è String, l'operazione verifica l'assenza di una corrispondenza di sottostringa. Se l'attributo di destinazione del confronto è Binary, l'operazione verifica l'assenza di una sottosequenza della destinazione che corrisponde all'input. Se l'attributo di destinazione del confronto è un set ("SS", "NS" o "BS"), l'operazione verifica l'assenza di un membro del set (non come sottostringa). |   | 
|   | `BEGINS_WITH`: controlla la presenza di un prefisso. Per `BEGINS_WITH`, `AttributeValueList` può contenere solo un `AttributeValue` di tipo String o Binary (non Number o Set). L'attributo di destinazione del confronto deve essere String o Binary (non Number o un set). |   | 
|   | `IN`: controlla le corrispondenze esatte. Per `IN`, `AttributeValueList` può contenere più di un `AttributeValue` di tipo String, Number o Binary (non un set). Per corrispondere, l'attributo di destinazione del confronto deve essere dello stesso tipo e valore esatto. Una valore stringa non corrisponde mai a un set di stringhe. |   | 
|   | `BETWEEN`: maggiore di o uguale a primo valore e minore di o uguale a secondo valore. Per `BETWEEN`, `AttributeValueList` deve contenere due elementi `AttributeValue` dello stesso tipo, String, Number o Binary (non un set). Un attributo di destinazione corrisponde se il valore di destinazione è maggiore o uguale al primo elemento e minore o uguale al secondo elemento. Se un elemento contiene un `AttributeValue` di un tipo diverso da quello specificato nella richiesta, il valore non corrisponde. Ad esempio, `{"S":"6"}` non si confronta con `{"N":"6"}`. Inoltre, `{"N":"6"}` non si confronta con `{"NS":["6", "2", "1"]}`. |   | 
| ExclusiveStartKey | La chiave primaria dell'elemento da cui continuare una scansione precedente. Una scansione precedente potrebbe fornire questo valore se l'operazione di scansione è stata interrotta prima della scansione dell'intera tabella a causa della dimensione del set di risultati o del parametro `Limit`. `LastEvaluatedKey` può essere re-inviato in una nuova richiesta di scansione per continuare l'operazione da quel punto.Tipo: `HashKeyElement` o `HashKeyElement` e `RangeKeyElement` per una chiave primaria composita. | No | 

## Risposte
<a name="API_Scan_ResponseElements"></a>

### Sintassi
<a name="API_Scan_ResponseElements.syntax"></a>

```
HTTP/1.1 200 
x-amzn-RequestId: 8966d095-71e9-11e0-a498-71d736f27375 
content-type: application/x-amz-json-1.0
content-length: 229 

{"Count":2,"Items":[{
    "AttributeName1":{"S":"AttributeValue1"},
    "AttributeName2":{"S":"AttributeValue2"},
    "AttributeName3":{"S":"AttributeValue3"}
    },{
    "AttributeName1":{"S":"AttributeValue4"},
    "AttributeName2":{"S":"AttributeValue5"},
    "AttributeName3":{"S":"AttributeValue6"},
    "AttributeName5":{"B":"dmFsdWU="}
    }],
    "LastEvaluatedKey":
        {"HashKeyElement":{"S":"AttributeName1"},
        "RangeKeyElement":{"N":"AttributeName2"},
    "ConsumedCapacityUnits":1,
    "ScannedCount":2}
}
```


****  

|  Nome  |  Descrizione  | 
| --- | --- | 
| Items  | Container per gli attributi che soddisfano i parametri dell'operazione.Tipo: mappa di nomi degli attributi e dei relativi tipi di dati e valori. | 
| Count  |  Il numero di elementi nella risposta. Per ulteriori informazioni, consulta [Conteggio degli elementi nei risultati](Scan.md#Scan.Count). Tipo: numero  | 
| ScannedCount  | Il numero di elementi nella scansione completa prima dell'applicazione di eventuali filtri. Un valore `ScannedCount` elevato con pochi o nessun risultato `Count` indica un'operazione Scan inefficiente. Per ulteriori informazioni, consulta [Conteggio degli elementi nei risultati](Scan.md#Scan.Count).Tipo: numero | 
| LastEvaluatedKey | La chiave primaria dell'elemento su cui si è interrotta l'operazione di scansione. Fornire questo valore in una operazione di scansione successiva per continuare l'operazione da quel punto.`LastEvaluatedKey` è `null` quando l'intero set di risultati della scansione è completo (cioè l'operazione ha elaborato l'ultima pagina).  | 
| ConsumedCapacityUnits | Il numero di unità di capacità di scrittura utilizzate dall'operazione. Questo valore mostra il numero applicato alla velocità effettiva assegnata. Per ulteriori informazioni, consulta [Modalità con capacità allocata di DynamoDB](provisioned-capacity-mode.md). Tipo: numero | 

## Errori speciali
<a name="API_Scan_SpecialErrors"></a>


****  

|  Errore  |  Descrizione  | 
| --- | --- | 
| ResourceNotFoundException  | La tabella specificata non è stata trovata. | 

## Esempi
<a name="API_Scan_Examples"></a>

Per gli esempi di utilizzo dell'SDK AWS, consulta [Scansione di tabelle in DynamoDB](Scan.md).

### Richiesta di esempio
<a name="API_Scan_Examples_Request"></a>

```
// This header is abbreviated. For a sample of a complete header, see API DynamoDB di basso livello.
POST / HTTP/1.1 
x-amz-target: DynamoDB_20111205.Scan 
content-type: application/x-amz-json-1.0

{"TableName":"1-hash-rangetable","ScanFilter":{}}
```

### Risposta di esempio
<a name="API_Scan_Examples_Response"></a>

```
HTTP/1.1 200
x-amzn-RequestId: 4e8a5fa9-71e7-11e0-a498-71d736f27375 
content-type: application/x-amz-json-1.0 
content-length: 465 

{"Count":4,"Items":[{
	"date":{"S":"1980"},
	"fans":{"SS":["Dave","Aaron"]},
	"name":{"S":"Airplane"},
	"rating":{"S":"***"}
	},{
	"date":{"S":"1999"},
	"fans":{"SS":["Ziggy","Laura","Dean"]},
	"name":{"S":"Matrix"},
	"rating":{"S":"*****"}
	},{
	"date":{"S":"1976"},
	"fans":{"SS":["Riley"]},"
	name":{"S":"The Shaggy D.A."},
	"rating":{"S":"**"}
	},{
	"date":{"S":"1985"},
	"fans":{"SS":["Fox","Lloyd"]},
	"name":{"S":"Back To The Future"},
	"rating":{"S":"****"}
	}],
    "ConsumedCapacityUnits":0.5
	"ScannedCount":4}
```

### Richiesta di esempio
<a name="API_Scan_Examples_Request2"></a>

```
// This header is abbreviated. For a sample of a complete header, see API DynamoDB di basso livello.
POST / HTTP/1.1 
x-amz-target: DynamoDB_20111205.Scan 
content-type: application/x-amz-json-1.0
content-length: 125 

{"TableName":"comp5",
	"ScanFilter":
		{"time":
			{"AttributeValueList":[{"N":"400"}],
			"ComparisonOperator":"GT"}
	}
}
```

### Risposta di esempio
<a name="API_Scan_Examples_Response2"></a>

```
HTTP/1.1 200 OK
x-amzn-RequestId: PD1CQK9QCTERLTJP20VALJ60TRVV4KQNSO5AEMVJF66Q9ASUAAJG
content-type: application/x-amz-json-1.0
content-length: 262
Date: Mon, 15 Aug 2011 16:52:02 GMT

{"Count":2,
	"Items":[
		{"friends":{"SS":["Dave","Ziggy","Barrie"]},
		"status":{"S":"chatting"},
		"time":{"N":"2000"},
		"user":{"S":"Casey"}},
		{"friends":{"SS":["Dave","Ziggy","Barrie"]},
		"status":{"S":"chatting"},
		"time":{"N":"2000"},
		"user":{"S":"Fredy"}
		}],
"ConsumedCapacityUnits":0.5
"ScannedCount":4
}
```

### Richiesta di esempio
<a name="API_Scan_Examples_Request3"></a>

```
// This header is abbreviated. For a sample of a complete header, see API DynamoDB di basso livello.
POST / HTTP/1.1 
x-amz-target: DynamoDB_20111205.Scan
content-type: application/x-amz-json-1.0

{"TableName":"comp5",
	"Limit":2,
	"ScanFilter":
		{"time":
			{"AttributeValueList":[{"N":"400"}],
			"ComparisonOperator":"GT"}
	},
	"ExclusiveStartKey":
		{"HashKeyElement":{"S":"Fredy"},"RangeKeyElement":{"N":"2000"}}
}
```

### Risposta di esempio
<a name="API_Scan_Examples_Response3"></a>

```
HTTP/1.1 200 OK
x-amzn-RequestId: PD1CQK9QCTERLTJP20VALJ60TRVV4KQNSO5AEMVJF66Q9ASUAAJG
content-type: application/x-amz-json-1.0
content-length: 232
Date: Mon, 15 Aug 2011 16:52:02 GMT

{"Count":1,
	"Items":[
		{"friends":{"SS":["Jane","James","John"]},
		"status":{"S":"exercising"},
		"time":{"N":"2200"},
		"user":{"S":"Roger"}}
	],
	"LastEvaluatedKey":{"HashKeyElement":{"S":"Riley"},"RangeKeyElement":{"N":"250"}},
"ConsumedCapacityUnits":0.5
"ScannedCount":2
}
```

## Operazioni correlate
<a name="API_Scan_Related_Actions"></a>
+  [Query](API_Query_v20111205.md) 
+  [BatchGetItem](API_BatchGetItem_v20111205.md) 