Filtri e pattern di query
Ogni tab di tabella porta con sé un filtro: lo stato del predicato che DynoTable
trasforma in una richiesta DynamoDB. Capire come i pezzi si traducono in query o
scan è gran parte di ciò che rende l'app veloce e la tua bolletta leggera.
Questa pagina copre la modalità tab Visuale. Per scrivere query in stile SQL direttamente, passa a PartiQL; per join e aggregazioni, apri un Workbench.
La riga del filtro
La modalità visuale mostra un'unica riga orizzontale di pill:
[Index] [hashKey = value] [rangeKey op value] [+ filter] | [Clear] [Query/Scan]- Pill dell'indice — il pattern di query attraverso cui leggi.
- Pill delle chiavi — la chiave di partizione (hash) e, dove presente, la chiave di ordinamento (range) di quel pattern.
- Pill dei filtri — condizioni aggiuntive non di chiave (filtri di scan).
- Il pulsante di azione mostra Query o Scan a seconda di ciò che hai impostato, e diventa Load more una volta che i risultati iniziano a fluire.
Imposta un valore e DynoTable esegue automaticamente; cancellare o modificare una pill riavvia l'esecuzione non appena il filtro torna valido.

Query patterns
Un pattern di query è l'indice attraverso cui leggi:
PRIMARY— la / della tabella stessa.- Un o con nome — il suo schema di chiavi.
Il pattern scelto decide su quali chiavi puoi filtrare. Cambia pattern dalla pill dell'indice; le pill delle chiavi si aggiornano alla chiave di partizione e di ordinamento di quel pattern.
Query vs scan
Questa è la distinzione che conta per costo e velocità:
- Imposta un filtro sulla e DynoTable emette una mirata — legge solo la partizione corrispondente. Economica e veloce.
- Senza di esso ripiega su uno , che legge l'intera tabella (o indice) pagina per pagina. Il pulsante di azione mostra Scan per renderlo esplicito.
Filtri di chiave
La pill della chiave di partizione accetta un valore; l'azione diventa Query nel momento in cui è impostato. La pill della chiave di ordinamento aggiunge un confronto:
=,<,<=,>,>=— confronti ordinati (numeri, e lessicografici sulle stringhe).begins_with— corrispondenza di prefisso su stringhe o dati binari.between— un intervallo inclusivo; la pill aggiunge un secondo campo di valore.
Le chiavi di tipo stringa offrono il completamento automatico: man mano che DynoTable indicizza una tabella in background, suggerisce valori reali già visti. Le chiavi senza suggerimenti utili (UUID casuali, ad esempio) ripiegano su un input semplice.
Filtri di scan
La pill + filter aggiunge una condizione non di chiave — qualsiasi attributo, non solo le chiavi. Ogni filtro è una colonna, un operatore e un valore:
- Confronti:
=,≠,<,<=,>,>=,between. - Appartenenza:
in— corrisponde a qualsiasi valore di una lista (stringhe o numeri). - Stringa / binario:
begins_with,contains. - Esistenza:
exists,not exists. - Tipo:
type equals/type not equals(rispetto al codice di tipo DynamoDB —S,N,BOOL, …), più una famigliasizeper i tipi collezione.
Gli operatori offerti si adattano al tipo dell'attributo — i confronti d'ordine
compaiono per i numeri, begins_with per le stringhe. I filtri di scan si applicano
dopo che la query o lo scan ha letto gli Item, perciò restringono il risultato ma
non rendono uno scan più economico. Usa un filtro di chiave per ridurre la lettura;
usa i filtri di scan per raffinare ciò che torna.
Single-table design: chiavi composite
I single-table design impacchettano diversi tipi di entità in un'unica tabella dietro
un prefisso di chiave — USER#123, ORDER#456, TENANT#acme. DynoTable le riconosce
da solo, senza nulla da configurare:
- Le chiavi si decodificano sul posto. Un valore composito — un prefisso maiuscolo
unito al resto da
#,|o~— viene mostrato nelle sue parti etichettate in ogni griglia: la tabella, i risultati PartiQL e il Workbench. I valori ordinari che contengono semplicemente uno di quei caratteri (un colore esadecimale come#FF5733, una lista separata da pipe) restano esattamente come sono. - Filtra a un'entità in un clic. Fai clic con il tasto destro su una riga e scegli
Filtra a
USER#— il prefisso viene letto direttamente dalla chiave di quella riga. DynoTable applica un verobegins_withsulla chiave come un'ordinaria pill di filtro, che cancelli nel modo consueto (la sua ✕, oppure Clear). Quando in una riga sono prefissate sia la chiave di partizione sia quella di ordinamento, ottieni una scelta per ciascuna.
Non c'è alcun dialog, alcuna configurazione e nulla viene salvato — è derivato dal vivo dalle chiavi che hai davanti.

Ordinamento e paginazione
La pill della chiave di ordinamento porta con sé un interruttore di ordine
(ascendente / discendente) che si traduce in ScanIndexForward di DynamoDB. I risultati
fluiscono una pagina alla volta — Load more recupera la pagina successiva, e cambiare
la dimensione di pagina ricarica dalla prima pagina.
Run to end
Per impostazione predefinita una query o uno scan si mette in pausa dopo alcune pagine così una tabella grande non si carica tutta insieme — il pulsante di azione mostra Load more per recuperare la pagina successiva. Quando preferisci tirar giù tutto in un'unica passata, cambia la modalità di esecuzione:
- Fai clic sul chevron accanto al pulsante di azione e scegli Run to end. Il pulsante principale viene rietichettato in Scan all / Query all / Run all — anche quando sei in pausa al budget di pagine, dove cliccandolo lo svuoti fino in fondo.
- Fai clic su quel pulsante rietichettato e DynoTable continua a recuperare pagine finché l'intera tabella (o indice) non è letta. La scelta viene ricordata per tab per la sessione; scegli Paged per tornare indietro. Scegliere una modalità non avvia mai un'esecuzione da sola — rietichetta soltanto il pulsante, così decidi tu quando lanciare.
Su una tabella grande, armare Run to end mostra prima una richiesta di conferma con la dimensione approssimativa e il conteggio degli Item della tabella, così uno scan completo è sempre una scelta deliberata e non un incidente. Conferma per procedere, o annulla per restare in modalità paginata.

Dalla tastiera:
- ⌘↩ esegue la query corrente — e quando i risultati sono in pausa al budget di pagine prosegue alla pagina successiva invece di ricominciare da capo.
- ⌘⇧↩ esegue sempre fino alla fine in un colpo solo.
- ⌘. o Esc ferma un'esecuzione in corso in qualsiasi momento.








