

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.<br />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.<br />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.<br />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. <br />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).<br />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.<br />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.<br />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\#ASCII\_printable\_characters](http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters). <br />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.  <br />Tipo: String o Binary | No | 
|   | `EQ`: uguale.<br />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.<br />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.<br />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.<br />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.<br />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.<br />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.<br />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.<br />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.<br />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.<br />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.<br />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.<br />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.<br />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).<br />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).<br />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).<br />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) 